Ernesto Pardo Arroyo wrote: > Hi, > > I pulled and updated my workspace with the last ON source. However, libc.so.1 > was not built due to an error from ld. This is the error from nightly.log > > [i]/usr/ccs/bin/ld -o libc.so.1 -G -hlibc.so.1 -ztext -zdefs -zcombreloc > -M../port/mapfile-vers -M../i386/mapfile-vers > -M/export/home/epardo/builds/onnv-gate/usr/src/common/mapfiles/i386/map.pageali > gn -z rtldinfo=tls_rtldinfo -e __rtboot -zdtrace=dtrace_data pics/crtio.o > ... pics/values-Xa.o pics/crtn.o > /export/home/epardo/builds/onnv-gate/proto/root_i386/lib/libc_i18n.a > pics/plockstat.o -L/export/home/epardo/builds/onnv-gate/proto/root_i386/lib > -L/export/home/epardo/builds/onnv-gate/proto/root_i386/usr/lib > ld: fatal: ../port/mapfile-vers: 117: unknown symbol definition `nodynsort' > *** Error code 1 dmake: Warning: Target `libc.so.1' not remade because of > errors > Current working directory > /export/home/epardo/builds/onnv-gate/usr/src/lib/libc/i386 > *** Error code 1 > [/i] > > This is the affected line in the mapfile-vers file > > thr_keycreate_once = NODYNSORT; > > This line was changed in the changeset 4292:d7beef35913b. > > I looked up the Solaris 10 Linker and Libraries Guide but I didn't found any > mention to NODYNSORT. So, I don't know what caused this linker error (no > value for NODYNSORT, missing object or library from the PATH, wrong version > of the linker...). I hope you can help me. By the way, my build environment > is > > [i]/usr/bin/uname > SunOS epardo-solaris 5.11 snv_55b i86pc i386 i86pc > > /opt/onbld/bin/nightly ./opensolaris.sh > nightly.sh version 1.113 2007/05/04 > > /opt/SUNWspro/bin/dmake > dmake: Sun Distributed Make 7.7 2005/10/13 > number of concurrent jobs = 4 > > 32-bit compiler > /opt/onbld/bin/i386/cw -_cc > cw version 1.22 > primary: /opt/SUNWspro/bin/cc > cc: Sun C 5.8 Patch 121016-04 2006/10/18 > shadow: /usr/sfw/bin/gcc > gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802) > > 64-bit compiler > /opt/onbld/bin/i386/cw -_cc > cw version 1.22 > primary: /opt/SUNWspro/bin/cc > cc: Sun C 5.8 Patch 121016-04 2006/10/18 > shadow: /usr/sfw/bin/gcc > gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802) > > /usr/java/bin/javac > java full version "1.6.0-b105" > > /usr/ccs/bin/as > as: Sun Compiler Common 10 snv_54 11/27/2006 > > /usr/ccs/bin/ld > ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.555 > > Build project: default > Build taskid: 65 > [/i] > > My PATH is > [i]PATH=/opt/onbld/bin:/opt/onbld/bin/i386:/usr/ccs/bin:/opt/SUNWspro/bin:/opt/tea > > mware/bin:/usr/bin:/usr/sbin:/usr/ucb:/usr/openwin/bin:/usr/sfw/bin:/opt/sfw/bin > :. > [/i] > > Regards, > > > This message posted from opensolaris.org > _______________________________________________ > tools-linking mailing list > tools-linking at opensolaris.org
You are hitting a new mapfile keyword. Support for it went into build 58 at the end of January with PSARC 2007/026 ELF symbol sort sections 6475344 DTrace needs ELF function and data symbols sorted by address Use of the feature was introduced into ON with build 66 in May: 6518331 Eliminate duplicate addresses from ON ELF symbol sort sections That added the mapfile NODYNSORT keywords that you're hitting. The solution is to update your system to a newer version in order to get the newer linker. - Ali