[Ifeffit] Compiling horae/iffefit on Mac OS 10.4.7 Intel

Todd Hufnagel hufnagel at jhu.edu
Fri Sep 1 14:49:10 CDT 2006


Greetings:

I'm trying to get ifeffit and the horae packages running on an 
Intel-based Mac running OS 10.4.7. As someone else noted previously, 
the binary downloads don't work on Intel Macs. (As an aside to the 
person who asked about the console log, in my case the programs quit 
immediately after launching and no messages are generated in either 
console.log or system.log. I do have X11 installed; this behavior is 
the same with either X11 or Aquaterm chosen for output.)

So I decided to compile from the source. Unfortunately, I ran into a 
problem when compiling horae-062a. Using the Makefile.PL for Mac OS 
(http://cars9.uchicago.edu/~ravel/misc/horae_on_mac/Makefile.PL ) 
seems to work fine, and after "make;make install" I get no errors and 
executables for Artemis et al. are produced. Unfortunately, 
attempting to run any of the executables produces an error similar to 
the following:

>tchmac:/Applications/ifeffit/bin hufnagel$ ./artemis
>dyld: lazy symbol binding failed: Symbol not found: _iff_exec
>   Referenced from: 
>/Library/Perl/5.8.6/darwin-thread-multi-2level/auto/Ifeffit/Ifeffit.bundle
>   Expected in: dynamic lookup
>
>dyld: Symbol not found: _iff_exec
>   Referenced from: 
>/Library/Perl/5.8.6/darwin-thread-multi-2level/auto/Ifeffit/Ifeffit.bundle
>   Expected in: dynamic lookup
>
>Trace/BPT trap

A little digging around on the net suggested that this error comes 
from compiling with gcc-4.0 rather than gcc-3.3. Switching to that 
compiler, I can again run Makefile.PL successfully, but then when I 
run 'make' I get a new and exciting error:

>[...much successful stuff deleted...]
>cp Zlib.pm ../../blib/lib/Compress/Zlib.pm
>AutoSplitting ../../blib/lib/Compress/Zlib.pm 
>(../../blib/lib/auto/Compress/Zlib)
>/usr/bin/perl /System/Library/Perl/5.8.6/ExtUtils/xsubpp  -typemap 
>/System/Library/Perl/5.8.6/ExtUtils/typemap -typemap typemap 
>Zlib.xs > Zlib.xsc && mv Zlib.xsc Zlib.c
>cc -c  -I./zlib-src -g -pipe -fno-common -DPERL_DARWIN 
>-no-cpp-precomp -fno-strict-aliasing -I/usr/local/include -O3 
>-DVERSION=\"1.41\" -DXS_VERSION=\"1.41\" 
>"-I/System/Library/Perl/5.8.6/darwin-thread-multi-2level/CORE" 
>Zlib.c
>cc: installation problem, cannot exec `cc1': No such file or directory
>make[2]: *** [Zlib.o] Error 1
>make[1]: *** [subdirs] Error 2
>make: *** [subdirs] Error 2

and obviously no executables are produced.

A little more digging on the web revealed that the cc1 stuff should 
be in the /usr/libexec/gcc tree. Unfortunately, while there is a 
subdirectory there for gcc-4.0 for Intel, the only files for gcc-3.3 
are for PowerPC. That is, while there is a 
/usr/libexec/gcc/darwin/ppc/3.3/cc1, there is no corresponding 
subdirectory for Intel processors. The reason the compilation worked 
for gcc-4.0 is that there is, in fact, a 
/usr/libexec/gcc/i686-apple-darwin8/4.0.1/cc1.

At this point, I am stuck. I can compile under gcc-4.0 but get 
executables which don't run, and I can't compile at all under gcc-3.3.

I also ran into trouble compiling ifeffit, but I haven't exhausted my 
own abilities in chasing down those problems (yet).

Any assistance/advice/condolences would be appreciated.

Thanks,

Todd Hufnagel


-- 

Todd C. Hufnagel
Professor
Department of Materials Science and Engineering
Johns Hopkins University
102 Maryland Hall
3400 North Charles Street
Baltimore, MD 21218-2681

Voice: (410) 516-6277
Fax: (410) 516-5293
Email: hufnagel at jhu.edu
http://www.jhu.edu/~matsci/people/faculty/hufnagel/hufnagel.html



More information about the Ifeffit mailing list