freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

linux開發(fā)基礎(chǔ)相關(guān)知識簡介(文件)

2025-03-03 14:13 上一頁面

下一頁面
 

【正文】 地址 string,因此,編譯并運行之后,將出現(xiàn) Segment Fault 錯誤: $ gcc o test g $ ./test Please input a string: asfd Segmentation fault (core dumped) 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 GNU make和 makefile ? GNU make概述 ? Makefile 的基本結(jié)構(gòu) ? Makefile中的變量 ? GNU make 的主要預(yù)定義變量 ? Makefile的隱含規(guī)則 ? make命令行選項 ? 使用 automake和 autoconf產(chǎn)生 Makefile 博創(chuàng)科技 嵌入互動 169。 ? 實際上, make 工具通過一個稱為 makefile 的文件來完成并自動維護編譯工作。 2023 博創(chuàng)科技 makefile舉例 ? 在 UNIX中,習(xí)慣使用 makefile 作為 makfile 文件。 2023 博創(chuàng)科技 Makefile 的基本結(jié)構(gòu)( 1/2) ? Makefile是一個文本形式的數(shù)據(jù)庫文件,其中包含一些規(guī)則來告訴 make處理哪些文件以及如何處理這些文件。 博創(chuàng)科技 嵌入互動 169。 ? 一系列命今 (mand),是 make執(zhí)行的動作,通常是把指定的相關(guān)文件編譯成目標(biāo)文件的編譯命令,每個命令占一行,且每個命令行的起始字符必須為 TAB字符。 2023 博創(chuàng)科技 Makefile實例( 1/3) 以 開頭的為注釋行 test: gcc –o test : gcc –c –o : gcc –c –o clean: rm –f *.o ? 上面的 Makefile文件中共定義了四個目標(biāo): test、 、 clean。但要注意在續(xù)行號( \)后面不能跟任何字符(包括空格和鍵) 博創(chuàng)科技 嵌入互動 169。 博創(chuàng)科技 嵌入互動 169。當(dāng) make執(zhí)行完所有這些套嵌的規(guī)則后, make將處理最頂層的test規(guī)則。 ? 如果該規(guī)則中的依賴文件又是其他規(guī)則中的目標(biāo)文件,那么依照規(guī)則鏈不斷執(zhí)行這個過程,直到 Makefile文件的結(jié)束,至少可以找到一個不是規(guī)則生成的最終依賴文件,獲得此文件的時間戳 ? 然后從下到上依照規(guī)則鏈執(zhí)行目標(biāo)文件的時間戳比此文件時間戳舊的規(guī)則,直到最頂層的規(guī)則 ? 通過以上的分析過程,可以看到 make的優(yōu)點,因為 .o目標(biāo)文件依賴 .c源文件,源碼文件里一個簡單改變都會造成那個文件被重新編譯,并根據(jù)規(guī)則鏈依次由下到上執(zhí)行編譯過程,直到最終的可執(zhí)行文件被重新連接。這些變量對大小寫敏感,一般使用大寫宇母。 ? 保存可執(zhí)行命令名,如編譯器。 ? 保存編譯器的參數(shù)。 2023 博創(chuàng)科技 變量的定義和使用 ? Makefile中的變量是用一個文本串在 Makefile中定義的,這個文本串就是變量的值。如果變量的值發(fā)生變化,就只需要在一個地方修改,從而簡化了 Makefile的維護。 ? 需要注意的是,如果用戶在 Makefile中定義了同名的變量,用戶自定義變量將覆蓋同名的環(huán)境變量 ? 自動變量 ? 預(yù)定義變量 博創(chuàng)科技 嵌入互動 169。 ? $? 所有的依賴文件,以空格分開,這些依賴文件的修改日期比目標(biāo)的創(chuàng)建日期晚。例如,如果目標(biāo)名稱 為 (),則 $ 為 ,而 $% 為 。 ? ASFLAGS 匯編程序的選項。 ? CPP C 預(yù)編譯器的名稱,默認(rèn)值為 $(CC) E。 ? FC FORTRAN 編譯器的名稱,默認(rèn)值為 f77。實際上,make可以使工作更加自動化,也就是說, make知道一些默認(rèn)的動作,它有一些稱作隱含規(guī)則的內(nèi)置的規(guī)則,這些規(guī)則告訴 make當(dāng)用戶沒有完整地給出某些命令的時候,應(yīng)該怎樣執(zhí)行。 ? 綜上所述,一個 C編譯的具體命令將會是: $ {CC} $ {CFLAGS} $ {CPPFLAGS} $ {TARGET_ARCH} –c $ o $ 博創(chuàng)科技 嵌入互動 169。 ? GNU make 命令還有一些其他選項,下面是 GNU make 命令的常用命令行選項命令行選項含義: ? C DIR 在讀取 makefile 之前改變到指定的目錄 DIR。 ? I DIR 當(dāng)包含其他 makefile 文件時,可利用該選項指定搜索目錄。 ? w 在處理 makefile 之前和之后,顯示工作目錄。 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 使用 Autoconf 及 Automake 來產(chǎn)生 Makefile文件的步驟 ? autoscan 產(chǎn)生一個 ,執(zhí)行 autoscan 后會產(chǎn)生一個 的文件,可以用它做為 : ? 編輯 ,如下所示,并且把文件名改成 ? 執(zhí)行 aclocal和 autoconf ,分別會產(chǎn)生 及 configure 兩個文件: ? 編輯 ,內(nèi)容如下: ? 執(zhí)行 automake addmissing , Automake 會根據(jù) 文件,包含最重要的 : ? 最后執(zhí)行 ./configure 博創(chuàng)科技 嵌入互動 169。 ? RCS提供了如下幾個最重要的指令的: ? ci指令:將文件放入 RCS目錄下的控制系統(tǒng) ? co指令:從 RCS目錄下將文件取出 ? rcs指令:用來對 RCS文件進行參數(shù)的設(shè)置 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 指定版本 ? 若不指定版本編號時, co會從 RCS取得最新的版本。 2023 博創(chuàng)科技 關(guān)鍵詞的使用 ? 在 RCS中可以將關(guān)鍵詞變量放入程序代碼中。 ? $Data$:記錄程序代碼放入 RCS時的日期和時間。 ? $Log$:記錄將 RCS鎖住的時間,所輸入的文本語句。 ? $State$:使用 s選項所指定的特殊狀態(tài) 博創(chuàng)科技 嵌入互動 169。例如,當(dāng)軟件修改時會產(chǎn)生 Bug,并且可能在做這次修改后很長時間不會發(fā)現(xiàn)這些問題。它僅僅保留版本間的不同內(nèi)容。通常, CVS有兩種使用方式,一是本機方式,一是遠程執(zhí)行方式。它包括要管理的源代碼和用于管理源代碼的各種管理文件 ? 先設(shè)置環(huán)境變量 CVSROOT,指向信息倉庫的絕對路徑,然后調(diào)用 CVS的init命令: CVSROOT=/usr/local/cvsroot。而如果在開始使用源文件之前該目錄就已經(jīng)存在,則只需進入該目錄就行了。 2023 博創(chuàng)科技 命令簡介 ——導(dǎo)出源文件 ( 1/2) ? cvs checkout [r rev][D date][d dir][j merg1] [j merg2] modules r 導(dǎo)出指定版本的模塊 D 導(dǎo)出指定日期的模塊 d 導(dǎo)出指定目錄而不是模塊 j 合并當(dāng)前版本和指定版本 ? 使用下面的命令會導(dǎo)出剛才生成的模塊,并在當(dāng)前目錄下生成與文件倉庫中完全一樣的目錄結(jié)構(gòu): cvs checkout cvstest/c 博創(chuàng)科技 嵌入互動 169。 ? cvs remove [options] files ? 上述命令會從文件倉庫中刪除文件,但也要到提交之后才有作用 博創(chuàng)科技 嵌入互動 169。如果在CVS 文件倉庫中有一個文件 ,它的版本是 ,用戶 A 先檢出該文件進行修改,而稍后有用戶 B檢出該文件進行修改,并提前提交成 ,而在用戶 A再提交時就會出現(xiàn)沖突(如果文件內(nèi)容不同的話) ? 這時 CVS會提示需要手工解決。 2023 博創(chuàng)科技 文件版本管理 (3/3) ? 要訪問一個分支版本,可以使用“ r” 選項 cvs checkout –r tlb1 SOURCE ? 從當(dāng)前檢出的版本切換到一個分支版本: cvs update –r tlb1 SOURCE ? 使用下面的命令可以看版本信息: cvs status [–vlR] files ? v 顯示所有信息 ? l 不顯示子目錄信息 ? R 顯示子目錄信息 ? cvs update –j rev module 把當(dāng)前所做的修改與指定版本的文件進行合并。 2023 博創(chuàng)科技 演講完畢,謝謝觀看! 。 2023 博創(chuàng)科技 在遠程機器上使用 CVS ? 通過網(wǎng)絡(luò)使用 CVS 有很多種方式,但在這里只介紹比較簡單的一種:通過 rsh 執(zhí)行 cvs 命令。 2023 博創(chuàng)科技 文件版本管理 (1/3) ? cvs log [lR][r rev][d date][w login][files…] ? l 不處理子目錄 ? R 對子目錄做同樣處理 ? r 指定版本號 ? d 指定時間 ? w 指定登錄名 ? 使用上面的命令可以參看當(dāng)前模塊或指定文件的所有歷史版本信息 ? cvs annotate [lR][r rev|D date] files ? l 不處理子目錄 ? R 對子目錄做同樣處理 ? r 指定版本號 ? 使用上面的命令可以參看指定文件(檢出之后)的所有修改信息 博創(chuàng)科技 嵌入互動 169。 2023 博創(chuàng)科技 命令簡介 ——釋放工作目錄 ? cvs release –d SOURCE ? 這個命令會刪除工作目錄 cvstest/c(建議在提交了修改的模塊后執(zhí)行這一步),比使用 rm –rf cvstest 要好 博創(chuàng)科技 嵌入互動 169。 博創(chuàng)科技 嵌入互動 169。 其中 m用來指定注釋信息,如果后面在命令行不指定注釋信息,則會啟動缺省編輯器( vi)要求輸入注釋信息; cvstest/c是項目名稱(實際上是倉庫名,在 CVS服務(wù)器上會存儲在以這個名字命名的倉庫里); wu, cvstest分別標(biāo)識了作者和發(fā)行標(biāo)識。 2023 博創(chuàng)科技 添加項目的文件、目錄到信息倉庫 ? 要將需要管理的項目的文件加入到信息倉庫,并做上標(biāo)志。 2023 博創(chuàng)科技 開始項目 ? 用 CVS管理代碼,首先要創(chuàng)建一個“信息倉庫”。每一個開發(fā)者的工作都在他自己的目錄內(nèi),并且CVS將在每個開發(fā)者的工作完成后進行合并工作。 ? 如果 CVS保留每一次的代碼版本,會浪費很多的空間。在取出的過程中, co會將每個關(guān)鍵詞展開成其對應(yīng)的值 [rootwyh linux] co l [rootwyh linux] cat 博創(chuàng)科技 嵌入互動 169。 ? $Rivision$:指定版本號碼。 ? $ID$:和 $Header$相同,但不包括 RCS路徑名稱。用戶可以將這些關(guān)鍵詞說明當(dāng)作是程序中的批注。 ? [rootwyh linux] ci l 以 ? [rootwyh linux] co l 將 RCS中 ? 此外, rcsdiff也可以用來指定任何一個版本和當(dāng)前程序代碼進行比較。所以第一步必須要在當(dāng)前的目錄下制作一個文件: [rootwyh linux] mkdir RCS ? 接下來只要使用 ci指令。 2023 博創(chuàng)科技 RCS的使用 ? RCS( Revision Control System)即程序改版控制系統(tǒng),主要功能是用來管理文件的版本,可以節(jié)省空間和時間。 ? return 0。 博創(chuàng)科技 嵌入互動 169。 ? p 顯示 make 變量數(shù)據(jù)庫和隱含規(guī)則。 ? h 顯示所有的 make 選項。 2023 博創(chuàng)科技 make命令行選項 ? 直接在 make 命令的后面鍵入目標(biāo)名可建立指定的目標(biāo),如果直接運行 make,則建立第一個目標(biāo)。由于這些命令會使用一些變量,因此可以通過改變這些變量來定制 make。 博創(chuàng)科技 嵌入互動 169。 CX
點擊復(fù)制文檔內(nèi)容
職業(yè)教育相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1