redhat作業系統下C開發環境的構成與安裝

2021-05-24 02:01:29 字數 3193 閱讀 4385

你了解linux嗎?相信現在越來越多的人會說「是」的。那麼你了解到何種程度呢?不可否認,目前決大多數的linux使用者對linux的了解還處於比較低階的層次,他們可能會幾條命令、會配幾種服務、會用rpm來安裝軟體、會操作kde/gnome介面等等,但是當他們遇到一些需要編譯安裝的軟體時,面對一些簡單的出錯資訊,他們就手足無措了。要想真正跨躍這些初級層次,你就不可能不去了解一些底層的東西,比如本文要講到的linux下的c開發環境以及本文之外的其它作業系統知識。

linux 和c天生有不解之源,大家可能知道linux的作業系統核心就主要是用c寫的,另外linux下的很多軟體也是用c寫的,特別是一些著名的服務軟體,比如 mysql、apache等。初學者可能在編譯mysql這樣的軟體時,遇到過各式各樣的錯誤,其實只要你初步了解了linux的c開發環境,你就能自選解決安裝過程中的一些錯誤。

linux的c開發環境與windows的有所不同,在linux下,乙個完整的c開發環境包括以下三個組成:

1、函式庫: glibc

要構架乙個完整的c開發環境,glibc是必不可少的,它是linux下c的主要函式庫。glibc有兩種安裝方式:

a.安裝成測試用的函式庫,在編譯程式時用不同的選項來試用新的函式庫。

b.安裝成主要的c函式庫,所有新編譯程式均用的函式庫。

glibc2含幾個附加包:linuxthreads、locale和crypt,通常它們的檔名隨版本不同而類似於下列檔名:

glibc-2.06.tar.gz

glibc-linuxthreads-2.0.6.tar.gz

glibc-localedate-2.0.6.tar.gz

glibc-crypt-2.0.6.tar.gz

2、編譯器:gcc

gcc(gnu ccompiler)是gnu推出的功能強大、效能優越的多平台編譯器,gcc編譯器能將c、c++語言源程式、匯程式化序和目標程式編譯、連線成可執行檔案,以下是gcc支援編譯的一些原始檔的字尾及其解釋:

.c為字尾的檔案,c語言源**檔案;

.a為字尾的檔案,是由目標檔案構成的檔案庫檔案;

.c,.cc或.cxx 為字尾的檔案,是c++源**檔案;

.h為字尾的檔案,是程式所包含的標頭檔案;

.i 為字尾的檔案,是已經預處理過的c源**檔案;

.ii為字尾的檔案,是已經預處理過的c++源**檔案;

.m為字尾的檔案,是objective-c源**檔案;

.o為字尾的檔案,是編譯後的目標檔案;

.s為字尾的檔案,是組合語言源**檔案;

.s為字尾的檔案,是經過預編譯的組合語言源**檔案。

3、系統標頭檔案:glibc_header

缺少了系統標頭檔案的話,很多用到系統功能的c程式將無法編譯。

假如使用者在安裝過程中少裝了這些包,就會無法編譯c源程式。初學者有時候選擇自己定製軟體包來安裝,結果遺漏了這些包,導致無法編譯源程式,不少人就只好重新安裝一遍linux。其實並不需要這樣做,雖然從tar包來安裝linux的c開發環境對於初學者來說比較難,但是我們還是可以通過rpm包來迅速安裝 linux的c開發環境的。下面以red hat 7.3為例,介紹如何安裝linux的c開發環境,如果是更高版本的red hat也可以參考,只是要注意軟體版本的不同。

由於gcc包需要依賴binutils和cpp包,另外make包也是在編譯中常用的,所以一共需要8個包來完成安裝,它們是:

cpp-2.96-110.i386.rpm

binutils-2.11.93.0.2-11.i386.rpm

glibc-2.2.5-34.i386.rpm

glibc-kernheaders-2.4-7.14.i386.rpm

glibc-common-2.2.5-34

glibc-devel-2.2.5-34.i386.rpm

gcc-2.96-110.i386.rpm

make-3.79.1-8.i386.rpm

如果連在internet上的話,可以直接從internet上安裝,命令依次如下:

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/cpp-2.96-110.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/binutils-2.11.93.0.2-11.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/glibc-kernheaders-2.4-7.14.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/glibc-2.2.5-34.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/glibc-devel-2.2.5-34.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/glibc-common-2.2.5-34.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/gcc-2.96-110.i386.rpm

rpm -ivh

ftp://216.254.0.38/linux/redhat/7.3/en/os/i386

/redhat/rpms/make-3.79.1-8.i386.rpm

1.可執行檔案

2.包含檔案

3.庫檔案

可執行檔案就是最終執行的命令,包含檔案是該c程式include的一些定義檔案,庫檔案則是該c程式自定義的庫。比如對於用rpm安裝的 mysql:可執行檔案放在/usr/bin下,包含檔案放在/usr/include/mysql下,庫檔案在/usr/lib/mysql下。只有系統可以找到程式對應的包含檔案和庫檔案,程式可執行檔案才能正常執行。

了解了linux的c開發環境的構成和安裝,還是不夠的,還需要對其深入研究和學習,才能夠做到「知其然,知其所以然」。

Redhat作業系統磁碟掛載

1.在所有節點安裝必要軟體 yum y install bc 2.執行命令檢視每個節點未掛載的磁碟清單device list fdisk l 3.修改指令碼1中的device list bin sh 請按照實際硬體填寫device list device list dev sdb dev sdc d...

在Ubuntu作業系統中安裝基本的開發環境

在嵌入式開發中,經常需要在ubuntu環境下進行軟體開發。一般的套路是,在windows電腦上安裝virtual box 或者vm ware。然後安裝虛擬機器,比如ubuntu,fedora等。但是安裝後之後,ubuntu環境下一些基本的工具需要安裝。1 準備使用軟體維護工具apt get 1 可能...

redhat 作業系統yum源配置詳細步驟

redhat 作業系統yum源配置詳細步驟 1 使用xshell,root使用者上傳iso映象檔案。上傳iso檔案 2 建立 mnt cdrom目錄 mkdir mnt cdrom 3 掛載映象檔案至 mnt cdrom資料夾 rehl iso 映象檔案名 mount rehl iso mnt cd...