博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gentoo prefix重生(llvm/clang)
阅读量:7024 次
发布时间:2019-06-28

本文共 1302 字,大约阅读时间需要 4 分钟。

gentoo prefix重生(llvm/clang)

前天手贱,更新了mac上gentoo prefix的perl,然后发现git svn无法使用。更新perl其他组件的时候,遇到了一堆问题。

特别是subversion1.8,在gcc-apple下已经无法编译了。

gentoo prefix portage镜像

之前gentoo prefix的portage rsync服务器挂掉过,然后改了其他一台,但是速度都非常慢。看见阿里云有gentoo prefix portage

的镜像,尝试修改成了这个镜像,但是后面更新的软件,包括portage都会存在问题。

刚开始都准备放弃重新做gentoo prefix了,下载了新的bootstrap-prefix.sh,发现了两个地方:

1. 新的脚本中portage树从rsync.prefix.bitzolder.nl下载
2. 新的脚本已经直接开始使用llvm作为prefix的构建编译器了

因此,还是先将portage的同步地址改了。由于新的portage已经去掉了make.conf中的SYNC变量,取而代之的是多了一个repos.conf目录

来存放仓库配置。因此在$EPREFIX/etc/portage/repos.conf下创建gentoo_prefix.conf文件,内容是:

[DEFAULT]main-repo = gentoo_prefix[gentoo_prefix]location = /Users/babydragon/Gentoo/usr/portagesync-type = rsyncsync-uri = rsync://rsync.prefix.bitzolder.nl/gentoo-portage-prefix

更新llvm

刚开始用了阿里云的镜像,emerge了llvm之后没有问题,但是加上了clang的USE之后,怎么都emerge不了。切换成官方镜像之后,又遇到llvm3.5.2循环依赖。

搜索了下发现bootstrap-prefix脚本中是bootstrap先emerge了llvm 3.4。按照这个方式和漫长的等待,llvm 3.4 emerge完成之后,再升级到3.5,
所有依赖的cxx包都能够正常安装了。

然后就是更新系统了,因为之前是perl损坏,直接使用:

perl-cleaner --all

来更新所有perl的依赖,发现编译的时候还有问题,看上去没有使用新的clang。继续查看脚本,发现stage2的时候,脚本会向make.conf文件中追加:

CC=clangCXX=clang++BUILD_CC=clangBUILD_CXX=clang++

这几个变量,强制将编译器改成clang/clang++。

改完之后,git, svn和其他Perl的依赖,都能够正常的emerge了,git svn终于可以继续使用了。由于使用了llvm新版本,以后emerge boost等的时候,应该不会再有问题了吧。

转载自:https://coolex.info/blog/506.html

你可能感兴趣的文章
qt 调用zlib压缩与解压缩功能
查看>>
MVVM模式中WPF数据的完全绑定
查看>>
[Hibernate] - one to one
查看>>
【安卓】eclipse中不可错过的几个秘密、!
查看>>
桥接模式
查看>>
设置导航栏标题的文字属性
查看>>
纯银:优秀的人才,没一个开口就问“贵司薪水几何”(转)
查看>>
LoadTestAgentResultsLateException in VS2010
查看>>
开源一个基于nio的java网络程序
查看>>
在Hibernate中使用HibernateTemplate来进行包含sql语句的查询
查看>>
sqlite3经常使用命令&语法
查看>>
Java Collection 简介
查看>>
一个非常不错的背景纹理图的网站
查看>>
WinStore之Application Data
查看>>
word 批量修改表格格式
查看>>
解剖SQLSERVER 第六篇 对OrcaMDF的系统测试里避免regressions(译)
查看>>
memcpy内存拷贝及优化策略图解
查看>>
SQL Server 数据的创建、增长、收缩
查看>>
合并数据
查看>>
RAM,ROM,NAND Flash,NOR Flash(A)
查看>>