redhatlinux無法編譯
① linux-2.6.28編譯不通過,虛擬機環境,redhat9
可能是你源代碼包本身就有點問題哦
② redhat linux 9.0 無法編譯
出現這個一個是沒裝編譯器,二是許可權不夠
③ linux redhat 9 內核編譯出現問題
/usr/src/Linux-2.4 的源碼版本是多少,你確定是 2.4.20-8 嗎?看上去 aep 驅動無法編譯,很可能是版本對不上。用 oldconfig 編譯最好採用相同版本的源碼。
參見:http://www.gentoo.org/doc/en/kernel-upgrade.xml
11. Advanced: Using your old kernel .config to configure a new one
It is sometimes possible to save time by re-using the configuration file from your old kernel when configuring the new one. Note that this is generally unsafe -- too many changes between every kernel release for this to be a reliable upgrade path.
④ 編譯內核模塊錯誤(linux)
在這些高版本的RedHat Linux上,我們如果需要定製內核的話,沒有直接的源代碼rpm可以安裝,只能通過kernel.org下載的tar.gz的包手工安裝,或者通過kernel-*.src.rpm編譯出kernel-source包再來安裝。後面一種方法可以享受到RedHat針對內核的某些參數和代碼的優化,因此對使用RedHat發行版特別是企業版本的,是有一定好處的。
但是目前很多人至今分不清內核,內核開發,內核源代碼一些包之間的關系,因此在編譯內核的時候經常走彎路,同時RedHat官方對於如果得到kernel-source也沒有明確的指示,導致很多人不得要領。
首先認清楚各rpm包的內容和用途
kernel-*.rpm ------------- 內核二進制包,沒有的話系統都起不來
kernel-sourcecode-*.rpm------------------- 內核源代碼包,安裝到/usr/src/linux-*下面的,包含內核源代碼,編譯內核必須(當然是不考慮用kernel.tar.gz編譯的情況),但高版本RedHat Linux不再提供此rpm,原因參見官方Release Note,這篇文章的最終目的就是要我們自己把這個包搞出來。
kernel-devel-*.rpm----------------內核開發包,安裝到/usr/src/kernels,用於內核模塊開發,組織形式跟內核源代碼包類似,包含了部分內核源代碼。注意很多人誤認為這個就是內核源代碼包,直接拿它來編譯內核,當然不可能成功。這個包只是用於內核模塊一級開發,例如驅動程序等,雖然也可以make menuconfig make dep等,但make bzImage是不可能成功的,因為缺失了核心源代碼。
kernel-*.src.rpm---------------RedHat提供的用於建立rpm的源代碼包,安裝到/usr/src/redhat中,使用rpmbuild可以從這個包中build出上面所說的所有包。
現在就來從src.rpm編譯出上面的所有的包,除了sourcecode這個包其他的包都可以在不用修改任何地方的情況下直接rpmbuild出來,唯有sourcecode這個比較麻煩,一定要按照下面的步驟來做,我以RedHat AS4 所帶的版本為例,其他版本相同。
#首先安裝src.rpm
rpm -ivh kernel-2.6.9-5.EL.src.rpm
#進入相應目錄,要修改spec文件
cd /usr/src/redhat/SPECS
vi kernel-2.6.spec
#主要修改如下地方:
1,define buildsource 0------------我的這個在第8行,改為1,這就是為什麼沒有源代碼包的原因,因為默認不生成源代碼包
2, Requires: qt-devel, gtk2-devel readline-devel ncurses-devel-------我的在572行,如果沒用用X的話,把這句注釋掉,這樣編譯出來的包就不依賴於X-window的某些包,因為內核配置是可以make xconfig的,所以默認依賴X-window,我沒裝X-window,因此這個就去掉了。
#保存退出
touch /etc/beehive-root
#這句命令非必須,如果不做的話,最後編譯出來的包都會變成kernel-*.*-root.rpm,多了個root,據說是為了標示包的編譯人的,如果touch了這個文件,就沒有這個問題了,命名和官方rpm一樣。
rpmbuild -ba --target=i686 ./kernel-2.6.spec
#編譯i686平台的所有包,這樣上面介紹的所有包都會生成,或者換成rpmbuild -bb --target=i686 ./kernel-2.6.spec只編譯非src.rpm。
#所有包就會生成到/usr/src/redhat/RPMS/i686下面
#如果只需要sourcecode而並非所有rpm包,那在修改spec文件時還要修改如下行:
48 %ifarch noarch
49 %define builddoc 1
50 %define buildsource 0----------------這里0修改為1
在編譯的時候使用rpmbuild -ba --target=noarch ./kernel-2.6.spec,這樣僅僅編譯soucecode和doc包,會節省很多時間。
注意,此篇文章所講所有內容僅適用於使用2.6內核的新版本RedHat Linux,2.4版本內核代碼組織方式不同,不適用此文章。
以上這篇文章取自互聯網,我忘了出處,尊敬作者.
⑤ 在linux redhat下編譯vlc1.1.9 make時出錯,求幫助
我根據你的描述也下了一個,是個tar.xz的文件對吧?
你把它解壓後,進入vlc-2.0.4這個目錄,在終端運行./configure,然後make,最後make install就可以完成安裝,應該要很長時間,並不這樣,這其實是的源代碼編譯安裝,一般人是做不來的。
作為桌面用戶最好是直接可運行的,不知道你是什麼linux系統,如果是fedora、redhat系列,使用yum install vlc,如果是Ubuntu就直接用中心安裝。
⑥ Linux 不能編譯是不是少安裝了什麼東西
是的,一般是少安了GCC及相關的庫,去網上找個RPM包或者系統的定製中安裝一下即可
⑦ redhat6.4下安裝arm-linux-gcc編譯器(4.4.3)後在編譯時出錯
你使用交叉編譯工具,應該是你本地缺少libstdc++.so.6的庫文件,這個so庫是arm架構的,不是指本地的x86的。你需要確認你的編譯環境中包含相關arm的libstdc++.so.6庫,可以看看makefile中如何指定的。希望能幫到你~
⑧ redhat linux 9.0 操作系統下,交叉編譯器環境之下編譯出錯是什麼原因 詳細如下:
./configure 沒見到任何錯誤。
make 提示沒有目標,或許是 Makefile 有問題。 你自己改的 Makefile 有問題吧?
⑨ redhat linux 5.4安裝rrdtool,編譯不過去了,是不是因為下載的是cent5.4的原因呢
configure: error: Please fix the library issues listed above and try again.
configure:錯誤:請修復上面連出的庫問題後重試。
應該是上面某個需要的函數庫你沒裝。
⑩ LINUX下C++開發 編譯過不去,編譯信息在我上傳的截圖上,我用的是REDHat9.0linux
。。。。。。。。。。。。
是cout吧