Opened 12 years ago
Closed 12 years ago
#3309 closed task (invalid)
UDev LFS fails to build 'undefined reference to __secure_getenv
Reported by: | CD1212 | Owned by: | |
---|---|---|---|
Priority: | normal | Milestone: | 7.4 |
Component: | Book | Version: | SVN |
Severity: | normal | Keywords: | |
Cc: |
Description
At the UDev build stage of the (development) book my build failed with:
LINK build/udevd build/udev-local.a(log.o): In function `log_parse_environment': log.c:(.text.log_parse_environment+0xb): undefined reference to `__secure_getenv' log.c:(.text.log_parse_environment+0x31): undefined reference to `__secure_getenv' log.c:(.text.log_parse_environment+0x57): undefined reference to `__secure_getenv' log.c:(.text.log_parse_environment+0x7d): undefined reference to `__secure_getenv'
I fixed the issue by replacing:
SECURE = $(shell if nm /lib/libc.so.6 | grep -q " secure_getenv"; \ then echo yes; fi) ifeq "$(SECURE)" "yes" SECURE_GETENV = SECURE_GETENV else SECURE_GETENV = __SECURE_GETENV endif
with just
SECURE_GETENV = SECURE_GETENV
Felt I should just let you guys know. Hope I submitted this the right way and it helps you out!
Change History (4)
comment:1 by , 12 years ago
comment:2 by , 12 years ago
CD1212, could you try again with http://anduin.linuxfromscratch.org/sources/other/udev-lfs-198-3.tar.bz2 and see if that fixes things please?
Thanks,
Matt.
comment:3 by , 12 years ago
Hi Matt,
Sorry for not replying sooner. As Bruce suggested, I had not symlinked lib64 to lib which makes perfect sense as to why the original code did not work for me.
I have already compiled UDev in but I am more than happy to upgrade to this version if it helps you?
Thanks for your assistance, sorry I wasted your time! :)
comment:4 by , 12 years ago
Resolution: | → invalid |
---|---|
Status: | new → closed |
No need to retest, and no time wasted :) I was just wondering if the fixes for a different issue had sorted this out, but it looks like it was unrelated. Glad it's working for you now!
I'm not sure why your system fails. What is the output of:
from inside the chroot envronment? You should get:
0000000000037d70 W secure_getenv
or similar. It sounds like you are building with an old libc.