glibc 编译错误:未定义对“__lll_lock_wait_private”的引用

Wat*_*ter 5 glibc

编译glibc的时候出错,google了半天没搞懂!这是编译器的输出:

x86_64-pc-linux-gnu-gcc   -nostdlib -nostartfiles -shared -o /mnt/g/gcc/build/build-glibc-2.35/elf/ld.so.new           \
          -Wl,-z,combreloc -Wl,-z,relro -Wl,--hash-style=both -Wl,-z,defs       \
          /mnt/g/gcc/build/build-glibc-2.35/elf/librtld.os -Wl,--version-script=/mnt/g/gcc/build/build-glibc-2.35/ld.ma\
          -Wl,-soname=ld-linux-x86-64.so.2                      \
          -Wl,-defsym=_begin=0
/usr/sbin/ld: /mnt/g/gcc/build/build-glibc-2.35/elf/librtld.os: in function `_dl_make_stacks_executable':
/mnt/g/gcc/build/glibc-2.35/elf/../sysdeps/unix/sysv/linux/dl-execstack.c:69: undefined reference to `__lll_lock_wait_private'
/usr/sbin/ld: /mnt/g/gcc/build/glibc-2.35/elf/../sysdeps/unix/sysv/linux/dl-execstack.c:91: undefined reference to `__lll_lock_wake_private'
/usr/sbin/ld: /mnt/g/gcc/build/build-glibc-2.35/elf/librtld.os: in function `__thread_gscope_wait':
/mnt/g/gcc/build/glibc-2.35/elf/../sysdeps/nptl/dl-thread_gscope_wait.c:79: undefined reference to `__lll_lock_wake_private'
/usr/sbin/ld: /mnt/g/gcc/build/glibc-2.35/elf/../sysdeps/nptl/dl-thread_gscope_wait.c:28: undefined reference to `__lll_lock_wait_private'
/usr/sbin/ld: /mnt/g/gcc/build/build-glibc-2.35/elf/librtld.os: in function `_dl_init_static_tls':
/mnt/g/gcc/build/glibc-2.35/elf/../elf/dl-tls.c:1092: undefined reference to `__lll_lock_wait_private'
/usr/sbin/ld: /mnt/g/gcc/build/glibc-2.35/elf/../elf/dl-tls.c:1103: undefined reference to `__lll_lock_wake_private'
Run Code Online (Sandbox Code Playgroud)

小智 1

我遇到了同样的问题,我想我可能找到了根本原因。我猜你使用的是 WSL,Windows FS 不区分大小写,而 linux/unix 区分大小写。检查此链接以启用源文件夹的区分大小写,并尝试重新制作: https: //learn.microsoft.com/en-us/windows/wsl/case-sensitivity