李杰 徐均
摘 要 本文介紹了在Linux系統(tǒng)上搭建C開發(fā)環(huán)境所需要的開發(fā)工具包,以及這些開發(fā)工具包在Linux系統(tǒng)上的安裝過程。
【關(guān)鍵詞】Linux系統(tǒng) C開發(fā)環(huán)境
Linux的操作系統(tǒng)內(nèi)核主要是由C編寫,Linux下的很多軟件也是由C編寫的,比如MySQL、Apache等。初學(xué)者在編譯這樣的軟件時,會遇到過各種錯誤,只要初步了解了Linux的C開發(fā)環(huán)境,就能自選解決安裝過程中的一些錯誤。
1 Linux的C開發(fā)工具包
Linux的C開發(fā)環(huán)境與Windows的有所不同,在Linux下,一個完整的C開發(fā)環(huán)境包括以下三個組成:
1.1 函數(shù)庫: glibc
要構(gòu)架一個完整的C開發(fā)環(huán)境,glibc是必不可少的,它是Linux下C的主要函數(shù)庫。glibc是gnu發(fā)布的libc庫,即c運行庫。glibc是linux 系統(tǒng)中最底層的api(應(yīng)用程序開發(fā)接口),幾乎其它任何的運行庫都會倚賴于glibc。glibc除了封裝linux操作系統(tǒng)所提供的系統(tǒng)服務(wù)外,它本身也提供了許多其它一些必要功能服務(wù)的實現(xiàn)。
在RHEL5系統(tǒng)上安裝glibc需要相關(guān)的依賴關(guān)系附加包:
1.2 編譯器:gcc
gcc(GNU CCompiler)是GNU推出的功能強大、性能優(yōu)越的多平臺編譯器,gcc編譯器能將C、C++語言源程序、匯程式化序和目標(biāo)程序編譯、連接成可執(zhí)行文件,以下是gcc支持編譯的一些源文件的后綴及其解釋:
1.3 系統(tǒng)頭文件:glibc_header
缺少了系統(tǒng)頭文件的話,很多用到系統(tǒng)功能的C程序?qū)o法編譯。
假如用戶在安裝過程中少裝了這些包,就會無法編譯C源程序。初學(xué)者有時候選擇自己定制軟件包來安裝,結(jié)果遺漏了這些包,導(dǎo)致無法編譯源程序,只好重新安裝一遍Linux系統(tǒng)。
下面以RHEL5為例,介紹如何安裝Linux的C開發(fā)環(huán)境。
2 Linux的C開發(fā)工具包的安裝
Linux的C開發(fā)工具包可以在yum服務(wù)下安裝,也可以利用iso 光盤源文件通過命令rpm安裝,本文介紹利用iso 光盤源文件安裝工具包。
安裝完后,就構(gòu)成了最基本的C開發(fā)環(huán)境,在這個C開發(fā)環(huán)境中,可以編譯多數(shù)的C寫的應(yīng)用程序。而對于一個C程序來說,安裝完成后通??梢苑殖扇齻€組成:
(1)可執(zhí)行文件。
(2)包含文件。
(3)庫文件。
可執(zhí)行文件就是最終運行的命令,包含文件是該C程序include的一些定義文件,庫文件則是該C程序自定義的庫。比如對于用RPM安裝的MySQL:可執(zhí)行文件放在/usr/bin下,包含文件放在/usr/include/mysql下,庫文件在/usr/lib/mysql下。只有系統(tǒng)找到程序?qū)?yīng)的包含文件和庫文件,程序可執(zhí)行文件才能正常運行。
參考文獻
[1]楊水清.ARM嵌入式Linux系統(tǒng)開發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,2009.
作者單位
1.北京北大方正軟件技術(shù)學(xué)院網(wǎng)絡(luò)工程分院 河北省廊坊市 065001
2.四川交通職業(yè)技術(shù)學(xué)院計算機工程系 四川省成都市 611130endprint
摘 要 本文介紹了在Linux系統(tǒng)上搭建C開發(fā)環(huán)境所需要的開發(fā)工具包,以及這些開發(fā)工具包在Linux系統(tǒng)上的安裝過程。
【關(guān)鍵詞】Linux系統(tǒng) C開發(fā)環(huán)境
Linux的操作系統(tǒng)內(nèi)核主要是由C編寫,Linux下的很多軟件也是由C編寫的,比如MySQL、Apache等。初學(xué)者在編譯這樣的軟件時,會遇到過各種錯誤,只要初步了解了Linux的C開發(fā)環(huán)境,就能自選解決安裝過程中的一些錯誤。
1 Linux的C開發(fā)工具包
Linux的C開發(fā)環(huán)境與Windows的有所不同,在Linux下,一個完整的C開發(fā)環(huán)境包括以下三個組成:
1.1 函數(shù)庫: glibc
要構(gòu)架一個完整的C開發(fā)環(huán)境,glibc是必不可少的,它是Linux下C的主要函數(shù)庫。glibc是gnu發(fā)布的libc庫,即c運行庫。glibc是linux 系統(tǒng)中最底層的api(應(yīng)用程序開發(fā)接口),幾乎其它任何的運行庫都會倚賴于glibc。glibc除了封裝linux操作系統(tǒng)所提供的系統(tǒng)服務(wù)外,它本身也提供了許多其它一些必要功能服務(wù)的實現(xiàn)。
在RHEL5系統(tǒng)上安裝glibc需要相關(guān)的依賴關(guān)系附加包:
1.2 編譯器:gcc
gcc(GNU CCompiler)是GNU推出的功能強大、性能優(yōu)越的多平臺編譯器,gcc編譯器能將C、C++語言源程序、匯程式化序和目標(biāo)程序編譯、連接成可執(zhí)行文件,以下是gcc支持編譯的一些源文件的后綴及其解釋:
1.3 系統(tǒng)頭文件:glibc_header
缺少了系統(tǒng)頭文件的話,很多用到系統(tǒng)功能的C程序?qū)o法編譯。
假如用戶在安裝過程中少裝了這些包,就會無法編譯C源程序。初學(xué)者有時候選擇自己定制軟件包來安裝,結(jié)果遺漏了這些包,導(dǎo)致無法編譯源程序,只好重新安裝一遍Linux系統(tǒng)。
下面以RHEL5為例,介紹如何安裝Linux的C開發(fā)環(huán)境。
2 Linux的C開發(fā)工具包的安裝
Linux的C開發(fā)工具包可以在yum服務(wù)下安裝,也可以利用iso 光盤源文件通過命令rpm安裝,本文介紹利用iso 光盤源文件安裝工具包。
安裝完后,就構(gòu)成了最基本的C開發(fā)環(huán)境,在這個C開發(fā)環(huán)境中,可以編譯多數(shù)的C寫的應(yīng)用程序。而對于一個C程序來說,安裝完成后通??梢苑殖扇齻€組成:
(1)可執(zhí)行文件。
(2)包含文件。
(3)庫文件。
可執(zhí)行文件就是最終運行的命令,包含文件是該C程序include的一些定義文件,庫文件則是該C程序自定義的庫。比如對于用RPM安裝的MySQL:可執(zhí)行文件放在/usr/bin下,包含文件放在/usr/include/mysql下,庫文件在/usr/lib/mysql下。只有系統(tǒng)找到程序?qū)?yīng)的包含文件和庫文件,程序可執(zhí)行文件才能正常運行。
參考文獻
[1]楊水清.ARM嵌入式Linux系統(tǒng)開發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,2009.
作者單位
1.北京北大方正軟件技術(shù)學(xué)院網(wǎng)絡(luò)工程分院 河北省廊坊市 065001
2.四川交通職業(yè)技術(shù)學(xué)院計算機工程系 四川省成都市 611130endprint
摘 要 本文介紹了在Linux系統(tǒng)上搭建C開發(fā)環(huán)境所需要的開發(fā)工具包,以及這些開發(fā)工具包在Linux系統(tǒng)上的安裝過程。
【關(guān)鍵詞】Linux系統(tǒng) C開發(fā)環(huán)境
Linux的操作系統(tǒng)內(nèi)核主要是由C編寫,Linux下的很多軟件也是由C編寫的,比如MySQL、Apache等。初學(xué)者在編譯這樣的軟件時,會遇到過各種錯誤,只要初步了解了Linux的C開發(fā)環(huán)境,就能自選解決安裝過程中的一些錯誤。
1 Linux的C開發(fā)工具包
Linux的C開發(fā)環(huán)境與Windows的有所不同,在Linux下,一個完整的C開發(fā)環(huán)境包括以下三個組成:
1.1 函數(shù)庫: glibc
要構(gòu)架一個完整的C開發(fā)環(huán)境,glibc是必不可少的,它是Linux下C的主要函數(shù)庫。glibc是gnu發(fā)布的libc庫,即c運行庫。glibc是linux 系統(tǒng)中最底層的api(應(yīng)用程序開發(fā)接口),幾乎其它任何的運行庫都會倚賴于glibc。glibc除了封裝linux操作系統(tǒng)所提供的系統(tǒng)服務(wù)外,它本身也提供了許多其它一些必要功能服務(wù)的實現(xiàn)。
在RHEL5系統(tǒng)上安裝glibc需要相關(guān)的依賴關(guān)系附加包:
1.2 編譯器:gcc
gcc(GNU CCompiler)是GNU推出的功能強大、性能優(yōu)越的多平臺編譯器,gcc編譯器能將C、C++語言源程序、匯程式化序和目標(biāo)程序編譯、連接成可執(zhí)行文件,以下是gcc支持編譯的一些源文件的后綴及其解釋:
1.3 系統(tǒng)頭文件:glibc_header
缺少了系統(tǒng)頭文件的話,很多用到系統(tǒng)功能的C程序?qū)o法編譯。
假如用戶在安裝過程中少裝了這些包,就會無法編譯C源程序。初學(xué)者有時候選擇自己定制軟件包來安裝,結(jié)果遺漏了這些包,導(dǎo)致無法編譯源程序,只好重新安裝一遍Linux系統(tǒng)。
下面以RHEL5為例,介紹如何安裝Linux的C開發(fā)環(huán)境。
2 Linux的C開發(fā)工具包的安裝
Linux的C開發(fā)工具包可以在yum服務(wù)下安裝,也可以利用iso 光盤源文件通過命令rpm安裝,本文介紹利用iso 光盤源文件安裝工具包。
安裝完后,就構(gòu)成了最基本的C開發(fā)環(huán)境,在這個C開發(fā)環(huán)境中,可以編譯多數(shù)的C寫的應(yīng)用程序。而對于一個C程序來說,安裝完成后通常可以分成三個組成:
(1)可執(zhí)行文件。
(2)包含文件。
(3)庫文件。
可執(zhí)行文件就是最終運行的命令,包含文件是該C程序include的一些定義文件,庫文件則是該C程序自定義的庫。比如對于用RPM安裝的MySQL:可執(zhí)行文件放在/usr/bin下,包含文件放在/usr/include/mysql下,庫文件在/usr/lib/mysql下。只有系統(tǒng)找到程序?qū)?yīng)的包含文件和庫文件,程序可執(zhí)行文件才能正常運行。
參考文獻
[1]楊水清.ARM嵌入式Linux系統(tǒng)開發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,2009.
作者單位
1.北京北大方正軟件技術(shù)學(xué)院網(wǎng)絡(luò)工程分院 河北省廊坊市 065001
2.四川交通職業(yè)技術(shù)學(xué)院計算機工程系 四川省成都市 611130endprint