當前位置:首頁 » 編程軟體 » linux軟體編譯基礎

linux軟體編譯基礎

發布時間: 2022-04-15 02:03:24

linux終端下如何進行c語言編譯

1、首先在linux下判斷是否安裝gcc編譯器,直接執行:gcc -v,判斷是否安裝gcc。

㈡ 想學一下linux內核編譯,無奈新手什麼都不會,誰能給推薦幾本書,該學些什麼基礎

你是准備深入學內核還是只學怎麼編譯?
只學編譯的話,不用買書,上網搜一下「內核配置命令」「內核配置選項」「linux內核編譯」能找到很多資料,先學常用make命令,用make menuconfig進入圖形配置界面,對照資料看懂一些常用的配置選項,然後在虛擬機的環境試著編譯幾次就學會了。
市面上介紹內核配置的書基本都是翻譯的內核裡面的Documentation,如果你英文好,下載個內核去Documentation文件夾里看也行。
深入學內核弄懂linux的工作原理或者想搞移植,那要學就多了點,基礎的:內核代碼樹的結構,內核makefile,c語言,匯編語言,有時候還要用到shell腳本(學會以上才能看懂代碼),然後是 linux系統結構,內存分配,進程管理,中斷,文件系統(先看原理再分析代碼),想做驅動程序,硬體也要懂一些,X86體系結構,常見匯流排和介面,想搞網路的話還要學TCP/IP等等。
基礎的:《c語言程序設計》《Linux Shell編程從初學到精通》《匯編語言程序設計》
內核相關的:《深入理解linux內核》《linux內核源代碼情景分析》《Linux設備驅動開發》《UNIX網路編程 》

㈢ linux下軟體編譯安裝 前提和方式

在linux系統中,如果要用源代碼包進行編譯安裝,就需要用到gcc這個工具,一般安裝系統時默認選擇都有這個工具包。可以用命令rpm -qa | grep gcc來看看是否安裝gcc。
源代碼包安裝一般分三步:
1.解壓之後,進入解壓的目錄中,運行./configure,後面還可以加參數,具體情況根據不同的軟體來設定。
2.運行make進行編譯,如果系統版本還有其他條件都支持的話,不會報什麼錯。
3.運行make install進行安裝就可以了。

㈣ linux上的編譯安裝的基本概念是什麼,具體的流程又是怎麼個樣子

計算機運行的程序都是二進制的代碼,那麼我們所用的編程語言都是自然語言中的字元,那麼就需要有一種機制來將這些轉化成二進制代碼,那麼根據轉化機制不一樣,編程語言(軟體 產生的源頭)分兩大類 解釋型 編譯型,解釋型就不說了,編譯型就是在寫好程序的源碼以後對程序進行編譯,編譯成二進制的可執行代碼。
在linux中很多軟體的源碼都會伴隨著軟體一起發布,軟體就是經過編譯的一些二進制的文件,這些二進制文件由源碼編譯而來。所以當我們拿到了軟體的源碼的時候,可以根據源碼編譯出軟體,然後對軟體進行安裝,這就是你所說的編譯安裝了,對於非電腦專業的人不需要了解那麼多,涉及的東西比較多,要知道在編譯的時候需要設置編譯參數的,,
所以會拿deb rpm包來安裝就行了。。使用打包好的二進制包安裝的另外的好處就是可以由包管理系統進行管理可以方便的對軟體包進行安裝升級和卸載,如果是源碼編譯那麼就需要自己手動的管理了。
具體的流程沒那麼復雜,linux軟體發布的源碼都是有標准格式 的,通常是tar.gz tar.bz2這樣的壓縮包,
tar xvf xxx.tar.gz 解壓源碼包
cd xxx 進入源碼目錄
more INSTALL 或者more README 閱讀源碼包里的安裝說明,看不懂英語的可以跳過這步
./configure 參數 配置編譯參數;最常見的是prefix=安裝路徑 這樣可以把軟體安裝到一個指定目錄而不是安裝到系統的文件結構中(linux的文件結構可以參考FHS標准規范里的定義)
make 當上一步正確的執行後會生成一個Makefile文件,使用make命令可以對軟體源碼進行編譯
make install 安裝(可能會需要root許可權)
//部分軟體還會提供make test 這樣的測試,在安裝前可以運行make test 來測試軟體是否編譯正確。

㈤ 如何編譯Linux操作系統的源代碼

首先uname
-r看一下你當前的linux內核版本
1、linux的源碼是在/usr/src這個目錄下,此目錄有你電腦上各個版本的linux內核源代碼,用uname
-r命令可以查看你當前使用的是哪套內核,你把你下載的內核源碼也保存到這個目錄之下。
2、配置內核
make
menuconfig,根據你的需要來進行選擇,設置完保存之後會在當前目錄下生成.config配置文件,以後的編譯會根據這個來有選擇的編譯。
3、編譯,依次執行make、make
bzImage、make
moles、make
moles
4、安裝,make
install
5、.創建系統啟動映像,到
/boot
目錄下,執行
mkinitramfs
-o
initrd.img-2.6.36
2.6.36
6、修改啟動項,因為你在啟動的時候會出現多個內核供你選擇,此事要選擇你剛編譯的那個版本,如果你的電腦沒有等待時間,就會進入默認的,默認的那個取決於
/boot/grub/grub.cfg
文件的設置,找到if
[
"${linux_gfx_mode}"
!=
"text"
]這行,他的第一個就是你默認啟動的那個內核,如果你剛編譯的內核是在下面,就把代表這個內核的幾行代碼移到第一位如:
menuentry
'Ubuntu,
with
Linux
3.2.0-35-generic'
--class
ubuntu
--class
gnu-linux
--class
gnu
--class
os
{
recordfail
gfxmode
$linux_gfx_mode
insmod
gzio
insmod
part_msdos
insmod
ext2
set
root='(hd0,msdos1)'
search
--no-floppy
--fs-uuid
--set=root
9961c170-2566-41ac-8155-18f231c1bea5
linux/boot/vmlinuz-3.2.0-35-generic
root=UUID=9961c170-2566-41ac-8155-18f231c1bea5
ro
quiet
splash
$vt_handoff
initrd/boot/initrd.img-3.2.0-35-generic
}
當然你也可以修改
set
default="0"來決定用哪個,看看你的內核在第幾位,default就填幾,不過我用過這種方法,貌似不好用。
重啟過後你編譯的內核源碼就成功地運行了,如果出現問題,比如滑鼠不能用,usb不識別等問題就好好查查你的make
menuconfig這一步,改好後就萬事ok了。
最後再用uname
-r看看你的linux內核版本。是不是你剛下的那個呢!有沒有成就感?

㈥ 在linux下編譯某個軟體的時候,需要事先考慮和准備哪些東西

先看README以及其他的一些文檔,編譯的時候會提示缺少包或包的版本太舊,這時用yum或apt安裝上,不知道包安裝時的名字的話,用yum或apt搜索一下吧。apt好像還有個解決依賴問題的功能,忘了

㈦ Linux中源碼編譯安裝程序包括哪些基本步驟

第一步:創建編譯腳本
進入到源碼目錄 執行 ./configure --prefix=/.../.....(--prefix=後面是想要安裝到的目錄)
第二部:編譯
執行 make
第三部:安裝
執行 make install
當然上面這幾部都是最基本的步驟,如果想優化編譯,要在./configure 後面加參數,或者configure之後手動修改Makefile文件 如O2(優化等級) FLAGS 等編譯參數的修改。
--------------------------------------------------------------------------------------------------------------
以上都是源碼包的編譯
如果是自己寫的C代碼 直接 用gcc編譯即可。
例如 編譯test.c
執行 gcc -o test test.c即可將test.c編譯為可執行的文件 test

自己打出來的 要採納啊!

㈧ linux 怎麼編譯c的源程序的gcc,編譯命令是什麼

在Linux下面,如果要編譯一個C語言源程序,我們要使用gcc編譯器。

先將源文件編譯成目標文件:gcc - c hello.c

生成hello.o文件,再將目標文件編譯成可執行文件:gcc -o hello hello.o

如:

int main(int argc,char **argv)

{

printf("Hello Linux ");

}

(8)linux軟體編譯基礎擴展閱讀:

在使用GCC編譯器的時候,我們必須給出一系列必要的調用參數和文件名稱。GCC編譯器的調用參數大約有100多個,這里只介紹其中最基本、最常用的參數。具體可參考GCC Manual。

GCC最基本的用法是∶gcc [options] [filenames]

其中options就是編譯器所需要的參數,filenames給出相關的文件名稱。

網路_gcc

㈨ 在linux里,c程序的編輯、編譯、調試的詳細步驟是什麼

(1)用工具寫好C程序...比如vi
(2)打開終端,進入你存放C語言代碼的路徑 例如: cd /opt/
(3)gcc a.c -o abc 意思是:把你的a.c編譯成abc可執行文件
(4)在當前目錄終端下 運行生成的abc,例如: ./abc 前面的.不要掉了
後面可以用gdb進行調試,你可以自己去學習...這是最基本的!!

㈩ linux軟體開發如何入門

要想在linux下面編程,首先得熟習linux的使用才行,學習的大體過程我描迅在下面,希望對你有幫助:1.鳥哥的私房菜基礎篇。這是學習linux系統的使用。2.....................伺服器篇。可以看些簡單的伺服器構建:tftp,ftp,nfs,dhcp.以後用的到。3.shell編程及高級編程。這里可以了解,不一定深入。有個概念就好了。4.c語言編程(c program plus 第五版,C與指針,C專家編程,C陷阱,這幾本書是經典之作)5.gcc ,make ,ctags,dbg的使用以及makefile的編寫(這一步與4同步進行)6.unix 高級環境編程 (這是書名,也是你要學的)7.QT的編寫,或則GTK 的編寫(這是圖形界面的開始)至此軟體工程師結束(下面是開發工程師要繼續的)8.gun arm的使用,交叉編譯環境的搭建9.arm 下面的編程與qtopia的搭建。包括qt/em....led(記不下來,你自己搜下)交叉編譯環境的搭建(完成arm上面的圖形化)10.對arm 開發板的熟悉。11.gun arm匯編的編寫與內嵌匯編的編寫12.u-boot下面驅動的編寫(根據晶元手冊來編寫)13.u-boot的移植,這里也可以用vivi14.kernel的裁減與移植15.文件系統的構建與移植16.系統級別的驅動編寫//到此 開發工程師初步形成。然後就是不停的練就慢慢成為高級了。推薦書籍《鳥哥的linux私房菜》《linux就該這么學》

熱點內容
網站搭建伺服器搭建 發布:2025-03-16 10:33:27 瀏覽:795
游戲目錄在哪裡安卓 發布:2025-03-16 10:33:19 瀏覽:467
婉兒腳本 發布:2025-03-16 10:19:33 瀏覽:580
c語言ftp下載文件 發布:2025-03-16 10:05:02 瀏覽:307
手機帳戶密碼怎麼找回密碼 發布:2025-03-16 10:02:10 瀏覽:706
c語言位段的使用 發布:2025-03-16 10:00:38 瀏覽:572
象山編程 發布:2025-03-16 09:38:41 瀏覽:927
綠點掌知識薪資密碼是多少 發布:2025-03-16 09:37:05 瀏覽:597
osu安卓版怎麼 發布:2025-03-16 09:37:05 瀏覽:153
python編程編程第三版 發布:2025-03-16 09:29:56 瀏覽:968