swarm-support
[Top][All Lists]
Advanced

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

Re: [Swarm-Support] Re: Swarm 2.2 on Intel (and PPC) Mac OSX Tiger


From: Brandon M. Gabler
Subject: Re: [Swarm-Support] Re: Swarm 2.2 on Intel (and PPC) Mac OSX Tiger
Date: Thu, 13 Jul 2006 09:42:28 -0700
User-agent: Internet Messaging Program (IMP) 4.0-cvs

Well, I got one step further with those suggestions; I realized that I had not
changed the -arch ppc lines again after I reinstalled the swarm packages.

I have double-checked that I changed everything the swarm FAQ instructs us to
change, and I have a new error:

/usr/bin/ld: warning Heatbug.o cputype (7, architecture i386) does not match
cputype (18) for specified -arch flag: ppc (file not loaded)
/usr/bin/ld: warning HeatSpace.o cputype (7, architecture i386) does not match
cputype (18) for specified -arch flag: ppc (file not loaded)
/usr/bin/ld: warning main.o cputype (7, architecture i386) does not match
cputype (18) for specified -arch flag: ppc (file not loaded)
/usr/bin/ld: warning HeatbugModelSwarm.o cputype (7, architecture i386) does not
match cputype (18) for specified -arch flag: ppc (file not loaded)
/usr/bin/ld: warning HeatbugObserverSwarm.o cputype (7, architecture i386) does
not match cputype (18) for specified -arch flag: ppc (file not loaded)
/usr/bin/ld: warning HeatbugBatchSwarm.o cputype (7, architecture i386) does not
match cputype (18) for specified -arch flag: ppc (file not loaded)

...more warnings here, then:

/usr/bin/ld: Undefined symbols:
___objc_class_name_HeatbugObserverSwarm
collect2: ld returned 1 exit status
make: *** [heatbugs] Error 1

I have checked my env variables through bash, and the path to swarmhome,
swarmhome itself, and display are set to the required settings.

Thanks for all the help thus far, it seems as though progress is being made, and
hopefully this discussion will help others along the way!

Take care,
Brandon


Quoting Bill Northcott <address@hidden>:

............
gcc -B ../../tools -g -O2 -Wno-long-double -o heatbugs Heatbug.o HeatSpace.o
main.o HeatbugModelSwarm.o HeatbugObserverSwarm.o HeatbugBatchSwarm.o
-L/usr/local/swarm2.2/lib /usr/local/swarm2.2/lib/libswarm.dylib
-L/Users/billn/Public/Swarm/swarm/macosx/build/src/space

There should be a '-arch ppc' in these lines.  If it is not in this
line, it will not have been in the compile commands for the object
files Heatbug.o etc..  So the object files are i386 code and the link
will fail.

It looks as if you have not properly modified /usr/local/swarm2.2/etc/
swarm/Makefile.common.

Lines 26 to 36 in that file should look like this:
CC = gcc -B ../../tools
CFLAGS =  -g -O2 -arch ppc -Wno-long-double
CPPFLAGS =  -D_GNU_SOURCE
EXPORT_EXTERN = @EXPORT_EXTERN@
IMPORT_EXTERN = @IMPORT_EXTERN@
SED = /usr/bin/gsed

OBJC=gcc -B ../../tools
OBJCFLAGS= -g -O2 -arch ppc -Wno-long-double -B $(top_srcdir)/tools -
fgnu-runtime -fno-strict-aliasing -Wall -Wno-import -Wno-protocol -
Wno-long-long $(EXTRAOBJCFLAGS)

GNUSTEPLIBINCLUDES =

If you add the '-arch ppc' options to the CFLAGS and OBJCFLAGS as
above and then do a clean rebuild of heatbugs, it will work.  The
rest of your transcript shows that you are linking the right libraries.

Bill





reply via email to

[Prev in Thread] Current Thread [Next in Thread]