I am not sure I embedded the framework in the right way and while
there are snippets of documentation across the web and mailing list
archives I am not sure I have done everything necessary, this is what
I have done:
1. Checked out WebKit from svn and built it using
WebKitTools/Scripts/build-webkit creating a WebKit.framework in
WebKitBuilds/Release.
2. Removed the reference to the system WebKit.framework from my
Xcode project.
3. Added a reference to the WebKit.framework in WebKitBuilds/Release.
4. Added a new copy files build phase to the target, specifying
"Frameworks" as the destination and adding the reference to the newly
included WebKit.framework under it.
Something has definitely worked as my .app now has a Frameworks folder
in it containing the WebKit.framework but sometimes (i have noticed
that it is after doing a "Clean All" from Xcode or whenever I build
from TextMate) I get the linker warning above and the application
hangs when it tries to use new (post Leopard) WebKit functionality. If
I get a successful link, obviously the new WebKit functionality works.
Note: I am using getElementsByClassName[1] to test for new webkit
functionality as it is something that I know is definitely different
between the system shipped WebKit and the one I am building.
So, am I doing anything wrong or missing anything vital in the steps I
have outlined above?
From what I can find on the web I have a feeling that this is
something to do with install_name_tool and I have tried doing
install_name_tool -change changing it to use @executable_path but as
it seems I have to call this on the built executable, this is going to
need doing every time? If so, should I be adding some kind of build
step to do this?