Dear all,

I know that this has been discussed ad nauseam on this list, but I could not find any earlier messages which would propose a general non-package-specific solution to the *multiple definitions of symbol* problem.

I know that for Tk there is a patch that solves this problem, and, if I were a serious programmer (or at least a serious compiler of programs), I would probably know how to extrapolate from there to other cases.

But since I am not, I would like to ask you if somebody is willing to explain, in an easy-to-follow-for-the-unexperienced way, what to do when you are trying to compile a module on mac os x and you get the type of error exemplified by the following fragment (the specific module is a project-internal thing, but I had similar problems with a variety of packages):

[Marco-Baronis-Computer:~/Desktop/fasty_stuff/FST-0.5] marco% perl Makefile.PL
Checking if your kit is complete...
Looks good
Writing Makefile for FST
[Marco-Baronis-Computer:~/Desktop/fasty_stuff/FST-0.5] marco% sudo make
cp FST.pm blib/lib/FST.pm
AutoSplitting blib/lib/FST.pm (blib/lib/auto/FST)
cc -c -I. -pipe -fno-common -no-cpp-precomp -fno-strict-aliasing -O3 -DVERSION=\"0.5\" -DXS_VERSION=\"0.5\" "-I/System/Library/Perl/darwin/CORE" _fst.c
/usr/bin/perl /System/Library/Perl/ExtUtils/xsubpp -typemap /System/Library/Perl/ExtUtils/typemap -typemap typemap FST.xs > FST.xsc && mv FST.xsc FST.c
cc -c -I. -pipe -fno-common -no-cpp-precomp -fno-strict-aliasing -O3 -DVERSION=\"0.5\" -DXS_VERSION=\"0.5\" "-I/System/Library/Perl/darwin/CORE" FST.c
Running Mkbootstrap for FST ()
chmod 644 FST.bs
rm -f blib/arch/auto/FST/FST.bundle
LD_RUN_PATH="" cc -flat_namespace -bundle -undefined suppress -L/usr/local/lib _fst.o FST.o -o blib/arch/auto/FST/FST.bundle
chmod 755 blib/arch/auto/FST/FST.bundle
cp FST.bs blib/arch/auto/FST/FST.bs
chmod 644 blib/arch/auto/FST/FST.bs
Manifying blib/man3/FST.3
[Marco-Baronis-Computer:~/Desktop/fasty_stuff/FST-0.5] marco% sudo make test
PERL_DL_NONLAZY=1 /usr/bin/perl "-Iblib/lib" "-Iblib/arch" test.pl
1..16
dyld: /usr/bin/perl multiple definitions of symbol _main
/usr/bin/perl definition of _main
blib/arch/auto/FST/FST.bundle definition of _main
make: *** [test_dynamic] Trace/BPT trap


Any help greatly appreciated!

Ciao,

Marco

Reply via email to