我正在尝试使用插件 linuxthreads ( https://ftp.gnu.org/gnu/glibc/编译 glibc 2.3 ( https://ftp.gnu.org/gnu/glibc/glibc-2.3.tar.gz ) glibc-linuxthreads-2.3.tar.gz)在 ubuntu 18.04 下。自述文件的要求是:
- gcc (3.2 或更新)
- GNU make 版本 3.79 或更新版本
- binutils 2.10.1 或更高版本
- 2.2 内核头文件
我应该安装较旧的发行版还是可以在较新的发行版上执行此任务。非常感谢任何建议或指示。
我可以使用支持 linuxthreads 的最新版本,即 glibc 2.5。我选择了 2.3,因为我已经阅读了 README。
到目前为止,我设法安装了 gcc 3.3。但我坚持尝试安装 gnu make 3.x(3.82 或 3.79)。
CC=gcc-3.3 ./configure --enable-add-ons=linuxthreads --prefix=<mypath>/glibc
loading cache ./config.cache
checking host system type... x86_64-unknown-linux-gnu
checking sysdep dirs... sysdeps/x86_64/elf linuxthreads/sysdeps/unix/sysv/linux/x86_64 linuxthreads/sysdeps/unix/sysv/linux linuxthreads/sysdeps/pthread sysdeps/pthread linuxthreads/sysdeps/unix/sysv linuxthreads/sysdeps/unix linuxthreads/sysdeps/x86_64 sysdeps/unix/sysv/linux/x86_64 sysdeps/unix/sysv/linux sysdeps/gnu sysdeps/unix/common sysdeps/unix/mman sysdeps/unix/inet sysdeps/unix/sysv sysdeps/unix/x86_64 sysdeps/unix sysdeps/posix sysdeps/x86_64/fpu sysdeps/x86_64 sysdeps/wordsize-64 sysdeps/ieee754/ldbl-96 sysdeps/ieee754/dbl-64 sysdeps/ieee754/flt-32 sysdeps/ieee754 sysdeps/generic/elf sysdeps/generic
checking for a BSD compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for pwd... /bin/pwd
checking build system type... x86_64-unknown-linux-gnu
checking for gcc... gcc-3.3
checking version of gcc-3.3... 3.3.6, ok
checking for gnumake... no
checking for gmake... no
checking for make... no
configure: error:
*** These critical programs are missing or too old: make
*** Check the INSTALL file for required versions.
make 必须低于版本 4。
最后我设法用 linuxthreads 编译 glibc。我将发布有关如何执行此操作的步骤:
我使用 Ubuntu 6.06.2 LTS (Dapper Drake)
现场 cd ubuntu dapper
修改 /etc/apt/source.list
至
然后
下载并解压:
glibc 2.3.6
利宾 2.3.6
linuxthreads 2.3.6
将插件 linuxthreads、linuxthreads_db 和 libidn 复制到文件夹 glibc-2.3.6
创建一个构建文件夹
检查 libc.so.6 是否真的有插件。
运行可共享对象 /home/ubuntu/glib/lib/libc.so.6
你会得到这个输出
带有 linux 线程的 libc