最近朋友在玩開源社群,在協助開發chewing-editor。
所以需要諸多測試環境,所以我也湊了一下熱鬧。
但偶然發現想在CentOS 7下編譯chewing-editor並非簡單的事,不僅不少安裝包的命名方式不同,連libchewing的版本也過低。
主要原因在於即便安裝了各種諸如EPEL的repo,也僅僅支持libchewing-0.3.4,並不支持chewing-editor所要求的0.4以上的版本。
所以我就想試著安裝Fedora 24的rpm安裝包,但發現諸多人並不建議這樣做,畢竟Fedora 24的安裝包不見得能在CentOS 7上兼容。
後來搜索了一些相關資料,又看到了CentOS官方關於rpm安裝包rebuild的相關資料。
文中提及Redhat(CentOS)是Fedora的一個相對穩定的子集,所以絕大多數情況下,CentOS是可以對Fedora的Source RPM進行rebuild的,意思就是Fedora上可以安裝的包,CentOS rebuild之後也可以安裝。
首先你必須先找到你要rebuild的Source RPM,你可以到這裡查看。
http://rpms.famillecollet.com/rpmphp/
然後下載到你的目錄下,
wget http://dl.fedoraproject.org/pub/fedora/linux/development/24/Everything/source/tree/Packages/l/libchewing-0.4.0-6.fc24.src.rpm
rebuild前,你需要先安裝rpm-build。
yum install -y rpm-build
安裝好rpmbuild後就開始rebuild Source RPM了。
rpmbuild –rebuild libchewing-0.4.0-6.fc24.src.rpm
yum install -y autoconf automake libtool texinfo sqlite-devel python2-devel
最後就來個卸載舊版本,然後本地安裝就可以了。
cd /root/rpmbuild/RPMS/x86_64
yum remove -y libchewing
yum localinstall -y libchewing*
yum install ibus-chewing
備註:
yum remove的時候會把一些相關的軟件也一併卸載,如果需要的話記得重新安裝喔 🙂
相關內容可參考:
https://wiki.centos.org/HowTos/RebuildSRPM
https://wiki.centos.org/HowTos/SetupRpmBuildEnvironment