我一直在閱讀關於構建RPM的知識,而且這個過程相當複雜。有沒有像這樣的程序/軟件:如何在沒有規格文件等的情況下從一行中的源代碼生成RPM?
- 下載tar.gz文件。解壓到目錄
- cd進入目錄
- 運行
- RPM文件輸出到目錄
是否有這樣的程序存在嗎?看起來好像它應該。畢竟,當我運行make,make install等時,我不需要指定spec文件,提供軟件安裝位置。那麼,爲什麼我必須爲創建RPM做所有這些工作呢?
我使用檢查安裝試過,但我不斷收到類似的錯誤「未找到目錄:/root/rpmbuild/BUILDROOT/hello-2.10-1.x86_64/usr」
那麼,有沒有一種更簡單的方法?
我不知道你問的是否存在,但我不認爲你與make的比較是有效的。當你運行make時,你需要一個Makefile來告訴make各種目標的定義。 你會如何心目中的工具知道: 1.如何構建項目 2.輸出神器(S)是什麼 3.如果這些文物應在目標文件系統被部署 4.什麼文件權限應該等等。 –
嗯。如果我現在可以毫無問題地使用「make」和「make install」,那麼我能記住的工具只是從「make」和「make install」的相同位置獲得他們的信息嗎? 工具「checkinstall」應該做這樣的事情,但我不能讓它爲RPM工作。我有一個解決方法是創建「deb」文件,並使用alien來轉換deb - > rpm。但它是不完美的,當然... 我只是鍵入「checkinstall」並創建rpm/deb(爲rpms竊聽)。不需要spec文件。 –
夠公平了......我明白你的意思了。這個問題的表述方式,我不清楚(無論如何),你想從你的Makefile中的信息創建rpm。這可能是可行的,但它可能會導致一個非常複雜的Makefile。我們在我的項目中維護了很多rpm spec文件,並且誠實地說它們不包含太多冗餘信息。 在任何情況下,這仍然不是真正創造「從源頭上」的rpm。您仍然需要Makefile來提供rpm需要的關於依賴性的所有信息等。如果您需要安裝前/安裝腳本,它會很快變得複雜。 –