日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

linux parted rpm,为Everest Linux构建QtParted的rpm包(四)

發布時間:2023/11/27 生活经验 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux parted rpm,为Everest Linux构建QtParted的rpm包(四) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本來應該沒有故事了,因為三個RPM都做好了,但是cjacker說spec文件中要有跟源代碼相關的%prep,%build和%install功能段,于是回去繼續整。[@more@]

這一整不打緊,差點完全顛覆了原來建立起來的思維體系,原來以為制作RPM就是把系統中的一些文件給組合到一個安裝包里面,因而關鍵在于%files功能段。現在發現根本就不是這樣,有了%prep,%build和%install功能段之后,只要把源碼壓縮包放到/usr/src/dist/BUILD下面,解壓,編譯,安裝,打包便可一氣呵成。而且,借助于設置BuildRoot,可以指定一個工作目錄進行建包,這樣建包完畢以后把工作目錄一刪,系統干干凈凈,絕對不會“污染”。

其實那三個功能段很簡單,%prep只需要一句話:%setup -q,%build只需要兩句話:./configure和make,%install也只要一句話:make install。但是我被BuildRoot迷住了,想制造一個干凈的系統,而且看了很多spec文件的例子,大都是指定了BuildRoot的。

但是使用BuildRoot時%install段就會變得復雜,因為必須自己寫那一條條的安裝指令,make install的話會無視BuildRoot直接裝到系統里面去。看了很長時間的安裝指令,似懂非懂。于是干脆在./configure的后面增加--prefix選項,這么一來的確安裝好了,可是運行時會出很多問題,因為很多軟件編譯的時候都會將prefix應用到源代碼中去,這樣做好的RPM在使用時就會有問題,比如我明明把QTParted給中文化了,運行的時候卻是英文界面,因為.qm文件的路徑里面包含了prefix。試來試去最后決定還是污染系統算了,畢竟這樣寫spec文件時最省心。

把軟件的頭文件單獨打包到一個xxx-devel.rpm中去似乎是一個普遍的做法,但我很不喜歡這種風格,因為當我安裝到某個軟件出現依賴問題時,通常總是要安裝至少兩個包,一個xxx,一個xxx-devel。因此這次對progsreiserfs和ntfsprogs打包時,我將頭文件一起裝了進去。

--------------------next---------------------

總結

以上是生活随笔為你收集整理的linux parted rpm,为Everest Linux构建QtParted的rpm包(四)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。