Makefile漸進式訓練

2021-10-03 04:14:27 字數 2513 閱讀 1249

本目錄主要包含makefile一步步遞進學習的示例**

makefile**例項:

進行makefile小實驗,體驗makefile的功能。

目錄中的makefile是不嚴謹的編寫方式。

目錄中的makefile_phony是嚴謹的編寫方式。

切換至step0目錄下,即makefile所在的同級目錄,使用如下命令實驗:

#在主機上makefile所在的目錄執行如下命令

#檢視當前目錄的內容

ls#執行make命令,make會在當前目錄下搜尋「makefile」或「makefile」,並執行

make

#可看到make命令後的輸出,它執行了makefile中編寫的命令

#檢視執行make命令後的目錄內容,多了test.txt檔案

ls#執行makefile的targetd目標,並檢視,少了test.txt檔案

make targetd

ls#執行makefile的targetb目標,並檢視,又生成了test.txt檔案

make targetb

ls#執行makefile的targetc目標

make targetc

make使用-f引數可以指定使用其它檔案。

#通過-f選項指定make使用的makefile檔案

make -f makefile_phony

#本示例中其它操作與makefile功能相同

使用makefile編譯hello示例程式。

編譯的輸出為hello_main檔案

切換至step1目錄下,即makefile所在的同級目錄,使用如下命令編譯:

#後編譯

make

編譯後使用如下命令執行:

./hello_main
使用makefile編譯hello示例程式,makefile中使用o檔案依賴

本實驗編譯及執行操作與step1相同,切換至step2目錄操作即可。

使用makefile編譯hello示例程式,makefile中使用變數

本實驗編譯及執行操作與step1相同,切換至step3目錄操作即可。

makefile_test檔案用於變數賦值實驗測試,可執行如下命令實驗:

make -f  makefile

#實驗輸出為makefile中各個變數的值

使用makefile編譯hello示例程式,makefile中使用變數定義最終目標,並使用分支支援不同的架構

切換至step4目錄下,即makefile所在的同級目錄,使用如下命令編譯:

#先清理,否則可能因為*.o檔案架構不同而出錯

make clean

#後編譯

make

編譯後使用如下命令執行:

./hello_main
切換至step4目錄下,即makefile所在的同級目錄,使用如下命令編譯:

#先清理,否則可能因為*.o檔案架構不同而出錯

make clean

#後編譯

make arch=arm

編譯後使用如下命令執行:

./hello_main
使用makefile編譯hello示例程式,makefile中使用函式,並支援層級目錄。

切換至step5目錄下,即makefile所在的同級目錄,使用如下命令編譯:

make
編譯的輸出目錄為bulid_x86編譯後使用如下命令執行:

.bulid_x86/hello_main
切換至step5目錄下,即makefile所在的同級目錄,使用如下命令編譯:

make arch=arm
編譯的輸出目錄為bulid_arm編譯後使用如下命令執行:

.bulid_arm/hello_main
若要清理檔案,也要指定架構

清理x86的編譯輸出,預設架構為x86,直接make clean即可:

make clean
清理arm的編譯輸出,需要使用arch=arm指定:

make clean arch=arm
清理所有的編譯輸出,可以直接使用cleanall目標:

make cleanall

漸進式儲存機制設想

針對業務採取不同的資料儲存可能性,為了維護安全性與高可用性,區塊鏈可以將其他資料庫作為乙個外掛程式,譬如mysql傳統資料庫,分布式資料庫等融合,企業開發應用時可以針對不同業務情形,選擇不同資料庫,來降低開發成本,所用的資料庫介面直接以grpc或者http方式呼叫.譬如部落格應用,最核心的使用者資料...

PWA 漸進式 web 應用

背景 解決的問題 關鍵時間節點 主要特點 使用pwa的基本要求 離線通知 作用域 更新策略 瀏覽器通過自身 diff 演算法能夠檢測 service work 的更新包含兩種方式 生命週期 mainfest欄位詳解 short name 應用展示的名稱 桌面上顯示的名稱 icons 定義不同尺寸的應...

漸進式web應用 PWA

pwa 漸進式 web 應用 運用現代的 web api 以及傳統的漸進式增強策略來建立跨平台 web 應用程式。pwa 所需的關鍵要素是service worker支援。值得慶幸的是,桌面和移動裝置上的所有主流瀏覽器都支援 service worker。注意 service workers 大量使...