gitlab-ce包在centos7.5 aarch64环境编译过程汇总

gitlab我尝试过得几条路:

1、同事尝试编译gitlab7.1.1源码,发现依赖包libv8 3.16.14版本不支持aarch64。

我接手后发现架构不支持,先熟悉ruby编译流程,本地部署ruby和rubygem环境。

修改libv8的架构,架构支持后,编译过程发现少了aarch64.release文件,经过定位发现源码中对x86_64和32位arm有单独的文件来编译生成架构.release文件。

拷贝一份arm文件,修改以支持aarch64,过程出现嵌套汇编报错,断言错误等问题,屏蔽上述这些问题后,又出现100+的函数未定义,初步定位是当前系统头文件不一致。这个修改工作量比较大,但不太难。

2 顺着1,也可以从x86修改来适配aarch64,我没有尝试

3 从opensuse获取gitlab source rpm包,安装后编译,存在200+个依赖包。

安装第一个依赖包共引出20+个rpm,有的包找不到二进制包需要源码编译。用了一天时间,还没有安装完依赖。没有再试下去了。也许所有的编译依赖解决了就可以顺利了编译了呢

4 从阿里云,华为云和清华大学的镜像库去找,找到的都是x86_64架构的。此时,有点绝望了。国内到底还有没有成功在aarch64架构安装过gitlab包呢?

5 从github下载源码编译,我用的7.1.stable版本,昨天编译遇到依赖包json源码报错,屏蔽后编译时还是从rubygem网站下载,而不是本地修改后的代码。这个问题今天下午解决了。目前安装了20个左右的依赖包,现在又发现gitlab-git依赖包出了问题。目前还没定位解决

备注:json解决过程见jira。过几天我把完整的解决过程贴出来。

你可能感兴趣的:(gitlab-ce包在centos7.5 aarch64环境编译过程汇总)