编译glibc

记录编译glibc-2.15出现找不到cpuid.h时的解决方法。

深度探索Linux操作系统》这边书的操作步骤参考网站:

http://www.kissthink.com/archive/shen-du-tan-suo--i-n-u-x-cao-zuo-xi-tong--xi-tong-gou-jian-he-yuan-li-jie-xi---gong-ju-bian-yi--.html



编译glibc-2.15时,先进行配置:

../glibc-2.15/configure \

--prefix=/usr --host=$TARGET \

--enable-kernel=3.7.4 --enable-add-ons \

--with-headers=$SYSROOT/usr/include \

libc_cv_forced_unwind=yes libc_cv_c_cleanup=yes \

libc_cv_ctors_header=yes


出现找不到"cpuid.h"的错误,在《深度探索Linux操作系统》这边书上是要先打一个glibc-2.15-cpuid.path这个补丁。但是找半天就是找不到这个补丁。

后来去查看配置文件到底怎么执行的,发现sysdeps/x86_64/configure 调用sysdeps/i386/configuers。

打开sysdeps/i386/configuers 再这里面查找"cpuid.h",妈蛋,仇人相见分外眼红,管他三七二十一,先把与它相关的代码屏蔽掉。大概在第635行:

#ac_fn_c_check_header_mongrel "$LINENO" "cpuid.h" "ac_cv_header_cpuid_h" "$ac_includes_default"
#if test "x$ac_cv_header_cpuid_h" = xyes; then :
#
#else
  #as_fn_error $? "gcc must provide the <cpuid.h> header" "$LINENO" 5
#fi


然后再配置编译,没有出现问题了。

最后执行:make install_root=$SYSROOT install

$SYSROOT = /vita/sysroot

查看下成果:

# ls /vita/sysroot/
etc  lib64  sbin  usr  var




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
编译glibc时,出现"[install-symbolic-link] Segmentation fault (core dumped)"的错误通常是由于系统缺少必要的依赖或者编译过程中出现了错误。为了解决这个问题,你可以尝试以下几个步骤: 1. 检查GLIBC版本:运行命令"strings /usr/lib/x86_64-linux-gnu/libc.so.6 | grep GLIBC"来查看系统中已安装的GLIBC版本。确保你使用的GLIBC版本与编译glibc时所需的版本匹配。 2. 安装编译glibc所需的依赖:根据你的操作系统版本和发行版,安装编译glibc所需的依赖库。例如,在CentOS 7.6下,你可以使用以下命令安装一些必要的依赖: ``` sudo yum install gcc gcc-c++ make ``` 3. 检查编译选项:确保你在编译glibc时使用了正确的选项。检查编译命令中的参数,如"--enable-checking=release"和"--enable-languages=c,c",确保它们符合你的需求。 4. 检查编译环境:确保你在编译glibc之前设置了正确的编译环境。这包括设置正确的路径、库和头文件等。 5. 检查系统限制:有时,系统可能会限制编译过程的某些资源,比如内存或文件描述符。你可以在系统日志中查看是否有与此错误相关的任何提示。 如果上述步骤都没有解决问题,你可以尝试搜索相关的错误信息或咨询社区或论坛以获取更多帮助。请注意,编译glibc是一个复杂的过程,可能需要深入的系统知识和经验。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [linux查看glibc版本](https://blog.csdn.net/ternence_hsu/article/details/107593800)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值