On 20/02/2008, at 9:16 AM, Thomas Louail wrote:
I'm trying to compile and run on my mac an objc-swarm app that i
co-developp, and which compiles and runs perfectly on a linux
(debian) machine, with gcc 3-3 and swarm 2-1 installed on it.
Tiger is running on my mac and i have gcc 4.0.1 installed. I
installed the binairies provided on swarm.org (thanks Bill
Northcott !), and payed attention to first install all the needed
stuff (tcl/tk, hdf, x11 and so on). The installation seems
allright, since i can compile and run under X11 the swarmapps
provided on the website (conway, mousetrap, etc.)
......
/usr/bin/ld: Undefined symbols:
_objc_msgSend
.objc_class_name_ListShuffler_c
..........
1) i could compile the swarmapps downloaded in the archive
provided on the website, which prooves my swarm install is
configured and ready to go. I fig
2) this swarm-objc-based-code compiles, links (with gcc 3.4) and
runs on a linux machine without difficulties, but doesn't on my mac
It seems from the errors, that you are attempting to link the Apple
Objective-C runtime instead of the Swarm modified GNU version.
This would not arise on Linux because the GNU version is the default.
If the provided examples compile and run while your code has
problems linking the appropriate runtime, it would appear likely
the issue is to do with your makefile.
Compare the link line from a build of the examples which work with
the your link line that fails. I think you may be missing a -
nostdlib option. Unfortunately, I no long have access to a Mac
running Tiger and my Swarm build system is a bit rotted. I am
hoping to get a Leopard binary out in the near future, but that
will not help on Tiger as it will use the 4 way fat libffi which is
part of Leopard.
Bill Northcott