Ignacio Mas Ivars wrote: > On Wed, 2006-10-11 at 22:38 -0700, Tom Henderson wrote: >> Ignacio Mas Ivars wrote: >>> Hi all! >>> I am trying to compile ns-2.30 in an linux Ubuntu box with g++ 4.1 and I >>> am having problems with the linker. All the files are compiled correctly >>> but when linking the following message appears: >>> >>> /usr/bin/ld: ns: hidden symbol `__stack_chk_fail_local' >>> in /usr/lib/libc_nonshared.a(stack_chk_fail_local.oS) is referenced by >>> DSO >>> /usr/bin/ld: final link failed: Nonrepresentable section on output >>> collect2: ld returned 1 exit status >>> >>> >>> I have tried compiling as well with g++ 4.0 without success and now I am >>> a bit out of ideas. Any pointers on where to look? This is my version of >>> g++ (GCC) 4.1.2 20060928 (prerelease) (Ubuntu 4.1.1-13ubuntu5) >>> >>> Thanks for the help! >>> /Nacho >> >> This page seems to suggest to turn off SSP by changing the default >> options to build with -fno-stack-protector >> >> https://wiki.ubuntu.com/GccSsp >> >> Let me know if that works. >> >> Tom > > Hi! > I tried that but still the same error. This are the flags passed to g++ > > g++ -c -O3 -march=pentium3 -pipe -fomit-frame-pointer -funroll-loops > -fexpensive-optimizations -fno-stack-protector -Wall > > and the error while linking is still the same... > Thanks anyway! > /Nacho
I can confirm this problem (Ubuntu 6.10, gcc 4.1.2) and that -fno-stack-protector does not fix it. A temporary workaround is to use an older gcc for compiling OTcl, TclCL, and ns: export CC="gcc-4.0" export CXX="g++-4.0" (Make sure the above is entered before building OTcl, TclCL, and ns.) In addition, I have discovered that OTcl 1.18 also fails to compile (same error) on my dual-core P4 system with Ubuntu's gcc 4.1.2 and when make is run with the command-line argument "-j 3" (or higher). It compiles without any errors if run without -j or if I switch to gc 4.0.4. I hope this helps someone. Richard