[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]

Linking error with wxWigdets library (XCode) was Re: [XaraXtreme-dev] Mac Developer

On 10/08/06, Cristian Bortes <cristian.bortes@xxxxxxxxx> wrote:
Now I'm struggling with the linking errors.

All of them are similar to this one:

/workxara/XaraLX/build/Development/libwxXtra.a(sizer.o) malformed
object, illegal reference for -dynamic code (reference to a coalesced
section (__TEXT,__textcoal_nt) from section (__TEXT,__eh_frame)
relocation entry (414))

I'm guessing that this is a widgets error (all the malformed objects are
wxwidgets objects) , caused by the "wrong" building of the wxWidgets.
I built wxWidgets library using the XCode project made by Phil.
So Phil, can you please tell me, if you succeed to use anywhere the wxWidgets
library that you got from building the project with XCode.

You may want to review the thread starting with
and check whether you are working with static wxWidget libraries.

If you are - and at this stage you probably should be -  please check
the 'Target Membership' checkboxes within the 'External Frameworks and
Libraries' Group. I think that you need libwx_macud_static.a ON and
libwx_macud-2.6.dylib' OFF; but I am not sure, and your project may
look different. I am not certain, but I do believe that you must make
this setting correctly by hand, because either XCode or the underlying
gcc toolchain will select dynamic libraries if it can find them.

In the same vein, it would be helpful if you could advise us on using
static or dynamic linking for this project at this time.

Also if anyone knows how to solve this type of error, any help will be

I am not using methods quite identical to the published ones (I have
compiled wxWidgets using the command line, and installed those
libraries), so I don't have to do the step that I have just mentioned.

You might also want to look at the build transcript (Cmd-Shift-B),
which will show the exact command that XCode was trying to run when it
encountered the error. You can copy it and paste it into a terminal or
text editor to see more clearly what is happening.