久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1581|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

Linux應(yīng)用編程之GCC編譯器及編譯過(guò)程

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1040469 發(fā)表于 2022-7-26 11:25 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

1GCC編譯器簡(jiǎn)介
    GCC編譯器(GNU C Compiler)是GNU開(kāi)發(fā)的一款多平臺(tái)編譯器,根據(jù)名字GCC是一款編譯C程序的編譯器。但隨著該編譯器的擴(kuò)展逐漸支持多平臺(tái)、多語(yǔ)言的編譯套件(GUN Compiler Colloction )。

2什么是編譯器
    編譯器并不是什么高級(jí)的東西,僅僅只是一個(gè)根據(jù)相應(yīng)平臺(tái)要求把用戶(hù)所編寫(xiě)的代碼刪除、修改、翻譯等等處理后生成對(duì)應(yīng)的可執(zhí)行文件的一種軟件程序,其本質(zhì)也是屬于軟件,所以大家可以把編譯器看成一個(gè)翻譯軟件。

3交叉編譯器
    在嵌入式Linux開(kāi)發(fā)過(guò)程中,比如我們開(kāi)發(fā)ARM平臺(tái)上的運(yùn)行程序,一般會(huì)在windows平臺(tái)上進(jìn)行代碼的編譯并生成對(duì)應(yīng)的可執(zhí)行文件燒錄到對(duì)應(yīng)的平臺(tái)中運(yùn)行,然而這個(gè)時(shí)候使用編譯器就是交叉編譯器。

4為何需使用交叉編譯
    嵌入式相比計(jì)算機(jī)最大的區(qū)別個(gè)人覺(jué)得在于資源分配上,相對(duì)而言嵌入式平臺(tái)的運(yùn)行速度、內(nèi)存大小等等都比計(jì)算機(jī)平臺(tái)小很多,既然編譯器也是軟件那就需要占用一定的資源,隨著編譯器的擴(kuò)展需要的硬件平臺(tái)要求也提高了,所以一般的嵌入式平臺(tái)難以滿(mǎn)足編譯要求,不過(guò)對(duì)于資源豐富,性能強(qiáng)勁的平臺(tái)當(dāng)然另當(dāng)別論了。

    所以為了滿(mǎn)足在PC上就可以開(kāi)發(fā)嵌入式軟件就有了前面所提到的交叉編譯環(huán)境,編譯器可以通過(guò)被指定所要運(yùn)行的目標(biāo)平臺(tái)來(lái)對(duì)相應(yīng)程序進(jìn)行編譯生成目標(biāo)平臺(tái)的可執(zhí)行文件,當(dāng)然此時(shí)所生成的可執(zhí)行文件不可在當(dāng)前環(huán)境下運(yùn)行。

5編譯的基本流程
    既然學(xué)習(xí)Linux應(yīng)用編程,那么必定需要將平時(shí)所編寫(xiě)的程序通過(guò)編譯器最終生成可執(zhí)行文件,下面大致看看GCC如何編譯程序的:
編譯過(guò)程解析

1)預(yù)處理階段:主要對(duì)源文件進(jìn)行文件包含和預(yù)處理語(yǔ)句的分析處理;
2)編譯階段:把預(yù)處理完的.i文件進(jìn)行一系列詞法分析、語(yǔ)法分析、語(yǔ)義分析以及優(yōu)化后生成相應(yīng)的匯編代碼文件;
3)匯編階段:使用匯編器將匯編代碼轉(zhuǎn)換成機(jī)器可以執(zhí)行的指令并生成.o文件;
4)鏈接階段:使用鏈接器把所有的目標(biāo)文件和庫(kù)文件鏈接起來(lái)放在合適的位置生成.out可執(zhí)行文件。

6簡(jiǎn)單體驗(yàn)一下GCC
    下面小哥就簡(jiǎn)單的在ubuntu下面寫(xiě)了一個(gè).c程序并使用gcc編譯運(yùn)行,其實(shí)與我們平時(shí)在windows環(huán)境中編譯運(yùn)行類(lèi)似,僅僅只是把windows點(diǎn)擊按鈕換成了對(duì)應(yīng)的命令行罷了。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美三级在线 | 美女久久久久久久 | 欧美日韩电影一区二区 | 久久午夜精品福利一区二区 | 精产国产伦理一二三区 | 成年视频在线观看福利资源 | 福利片在线观看 | 伊人一二三| 久久久精品视 | 九九九久久国产免费 | 亚洲 欧美 日韩在线 | 黄色大片视频 | 久久最新网址 | 99精品一区 | 国产免费一区二区三区免费视频 | 亚洲1区 | www.五月婷婷.com| 久久久蜜桃一区二区人 | 九九热在线视频观看这里只有精品 | 精一区二区 | 国产精品久久久久国产a级 欧美日本韩国一区二区 | 在线欧美小视频 | 日本精品视频在线 | 久久精品国产一区二区三区不卡 | 亚洲有码转帖 | 一级a毛片| 国产大片一区 | 中文av在线播放 | 午夜精品久久 | 亚洲视频在线一区 | 97视频免费 | 91看片免费 | 欧美日韩国产在线观看 | 亚洲一区二区三区在线观看免费 | 性网站免费 | 欧美日韩国产在线 | 国产精品永久久久久 | 一区二区三区精品在线 | 亚洲3级 | 国产一区精品在线 | 亚洲欧洲av在线 |