Ali Bahrami wrote: > 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. >
Then shouldn't the putback for 6518331 have bumped the version check in nightly.sh, so people using a too-old linker get a warning? -- Rich