gitlab我嘗試過得幾條路:
1、同事嘗試編譯gitlab7.1.1源碼,發(fā)現(xiàn)依賴包libv8 3.16.14版本不支持aarch64。
我接手后發(fā)現(xiàn)架構(gòu)不支持剧蹂,先熟悉ruby編譯流程,本地部署ruby和rubygem環(huán)境烦却。
修改libv8的架構(gòu)宠叼,架構(gòu)支持后,編譯過程發(fā)現(xiàn)少了aarch64.release文件其爵,經(jīng)過定位發(fā)現(xiàn)源碼中對x86_64和32位arm有單獨的文件來編譯生成架構(gòu).release文件冒冬。
拷貝一份arm文件,修改以支持aarch64,過程出現(xiàn)嵌套匯編報錯摩渺,斷言錯誤等問題简烤,屏蔽上述這些問題后,又出現(xiàn)100+的函數(shù)未定義证逻,初步定位是當(dāng)前系統(tǒng)頭文件不一致乐埠。這個修改工作量比較大,但不太難囚企。
2 順著1,也可以從x86修改來適配aarch64瑞眼,我沒有嘗試
3 從opensuse獲取gitlab source rpm包龙宏,安裝后編譯,存在200+個依賴包伤疙。
安裝第一個依賴包共引出20+個rpm银酗,有的包找不到二進(jìn)制包需要源碼編譯。用了一天時間徒像,還沒有安裝完依賴黍特。沒有再試下去了。也許所有的編譯依賴解決了就可以順利了編譯了呢
4 從阿里云锯蛀,華為云和清華大學(xué)的鏡像庫去找灭衷,找到的都是x86_64架構(gòu)的。此時旁涤,有點絕望了翔曲。國內(nèi)到底還有沒有成功在aarch64架構(gòu)安裝過gitlab包呢迫像?
5 從github下載源碼編譯,我用的7.1.stable版本瞳遍,昨天編譯遇到依賴包json源碼報錯闻妓,屏蔽后編譯時還是從rubygem網(wǎng)站下載,而不是本地修改后的代碼掠械。這個問題今天下午解決了由缆。目前安裝了20個左右的依賴包,現(xiàn)在又發(fā)現(xiàn)gitlab-git依賴包出了問題猾蒂。目前還沒定位解決
備注:json解決過程見jira均唉。過幾天我把完整的解決過程貼出來。