Next problem with --disable-shared
jaeger@informatik.uni-kl.de
jaeger@informatik.uni-kl.de
Tue Apr 4 20:53:00 GMT 2000
>>>>> Roland McGrath writes:
>>
>> Here's the next problem with disable-shared:
>>
>> In file included from tmpfile.c:57:
>> ../include/shlib-compat.h:26: abi-versions.h: No such file or directory
>> make[2]: ***[/data/builds/glibc/20000404-main-static/stdio-common/tmpfile.o] Error 1
>>
>> The problem is caused by:
>> config.h:#define DO_VERSIONING 1
Roland> Perhaps a better version of the solution I applied would be to do it in
Roland> configure instead of in Makeconfig. Then DO_VERSIONING would be unset too.
We need to unset both - hacking configure might be the right thing.
Roland> (Before someone asks, the reason shlib-compat.h doesn't test SHARED before
Roland> including abi-versions.h is because the dependency generation pass does a
Roland> single version and doesn't define SHARED, so you fail to get dependencies
Roland> on abi-versions.h when you should.)
Roland> Before I bother reverting my earlier change and hacking configure, why
Roland> don't you try reverting the earlier change and hand-editting your
Roland> config.h to #undef DO_VERSIONING and verify that your build works that way.
I just undeféd DO_VERSIONING and was nearly sucessfull.
I get now:
gcc -nostdlib -nostartfiles -o /home/aj/build-glibc-static/nss/makedb /home/aj/build-glibc-static/csu/crt1.o /home/aj/build-glibc-static/csu/crti.o `gcc --print-file-name=crtbegin.o` /home/aj/build-glibc-static/nss/makedb.o /home/aj/build-glibc-static/dlfcn/libdl.a /home/aj/builld-glibc-static/nss/db-open.o /home/aj/build-glibc-static/libc.a -lgcc /home/aj/build-glibc-static/libc.a -lgcc `gcc --print-file-name=crtend.o` /home/aj/build-glibc-static/csu/crtn.o
/home/aj/build-glibc-static/nss/db-open.o: In function `load_db':
/home/aj/glibc-2.2/nss/nss_db/db-open.c:82: undefined reference to `dlopen'
/home/aj/glibc-2.2/nss/nss_db/db-open.c:87: undefined reference to `dlsym'
/home/aj/glibc-2.2/nss/nss_db/db-open.c:91: undefined reference to `dlsym'
/home/aj/glibc-2.2/nss/nss_db/db-open.c:98: undefined reference to `dlsym'
/home/aj/glibc-2.2/nss/nss_db/db-open.c:156: undefined reference to `dlclose'
/home/aj/glibc-2.2/nss/nss_db/db-open.c:159: undefined reference to `dlerror'
/home/aj/build-glibc-static/nss/db-open.o: In function `unload_db':
/home/aj/glibc-2.2/nss/nss_db/db-open.c:172: undefined reference to `dlclose'
collect2: ld returned 1 exit status
make[2]: *** [/home/aj/build-glibc-static/nss/makedb] Error 1
make[2]: Leaving directory `/home/aj/glibc-2.2/nss'
make[1]: *** [nss/others] Error 2
Changing the link order (adding libdl.a after db-open) fixes this -
but I didn't succeed in changing the Makefile :-(.
The only other problem is fixed with the appended patch.
Andreas
2000-04-04 Andreas Jaeger <aj@suse.de>
* intl/Makefile: Only run the gettext test with shared libraries.
============================================================
Index: intl/Makefile
--- intl/Makefile 2000/02/26 00:59:28 1.21
+++ intl/Makefile 2000/04/05 03:37:53
@@ -44,10 +44,12 @@
include ../Rules
+ifeq (yes,$(build-shared))
.PHONY: do-gettext-test
tests: do-gettext-test
do-gettext-test: tst-gettext.sh $(objpfx)tst-gettext
$(SHELL) -e $< $(common-objpfx) $(objpfx)
+endif
$(objpfx)msgs.h: po2test.sed ../po/de.po
$(make-target-directory)
--
Andreas Jaeger
SuSE Labs aj@suse.de
More information about the Libc-hacker
mailing list