跨平台開發學習筆記

2021-06-27 22:32:55 字數 1019 閱讀 1411

以前我的開發僅僅是侷限在msvc中,當時就隱約有一種想法,想跳出這個框框,因為我感覺msvc把我限制的太死,以至於我沒了msvc,就不會怎麼程式設計了。由於在公司做平台開發專案以及自己對這種突破的渴望,在這跨平台開發方面的知識補充了不少,也認識了不少。知道msvc只是乙個整合開發環境,它用的編譯器是cl.exe,鏈結器是link.exe,專案管理工具msbuild,*.vcxprj是msbuild的指令碼,msbuild類似nmake, make等自動編譯工具等等等(參見make和msbuild學習筆記)。

跨平台開發環境配置可參見windows跨平台開發環境配置,通過這個配置可整合mingw/msys, make, vim, cmake, svn, git等開發相關利好工具。而我公司的平台專案的開發環境配置跟這個是一樣的。對整個專案的管理的思路大致是這樣子的,使用cmake寫專案管理指令碼,然後可分別生成make指令碼和msvc工程,再分別對其進行編譯。因為專案的管理只包括cmake指令碼,所以在windows上進行跨平台開發時如果能夠區分在不同作業系統下**介面及正確格式的使用,那麼在將整個專案搬到linux環境下進行編譯基本上是可行的。ps: 隨著對跨平台開發的了解越多,我越來越佩服我組的架構師了。

要掌握跨平台開發,先從外圍上來講,需要精通cmake,cmake是跨平台編譯工具,會使用cmake管理設定在不同作業系統下, 不同的編譯工具下, 以及分別在32bits和64bits下的工程配置,那麼你對整個專案的了解就抓住了源頭。依據我的實踐經驗,學習cmake也是學習跨平台的源頭,抓住源頭來學習這是一條最正確的路了。而其次就是**編輯工具,編譯工具,除錯工具,效能分析工具的選擇,編輯工具我覺得vim是很好用的(使用vim編碼能讓自己有一種極客程式設計的沉浸感);編譯工具可分不同的環境,make, msbuild (或者是vs), nmake;除錯工具windows上可使用vs,code block,linux下可使用gdb,code block;效能分析工具vs的profiler還是不錯的,gcc的gprof應該也不錯。這些工具希望有機會都能夠全都試一遍,比較一下。那麼從內在上來講,那就是**上的跨平台了。

跨平台開發是很有競爭性的也是非常有挑戰性的,加油!

Qt跨平台開發 隨筆記錄

1 libstdc 6.dll 如果不能使程式執行則使用mingw bin 中的libstdc 6.dll 的這個庫。2 19.qt 事件傳送函式sendevent postevent 3 qt自定義事件 4 qt狀態機框架 qt狀態機框架 簡單的狀態機 分段講解 5 arm40 ubuntu交叉編...

跨平台開發Cygwin MinGW

linux寶庫 1 引言 今天程式開發人員面臨的最大問題就是如何使他們的應用程式支援各種不同的平台,如何使使用者能夠在不同的平台下不作任何修改地就能使用他們的應用程式。眾所周知,linux作業系統和其它基於unix的作業系統一直是國際上使用廣泛又非常重要的os operating system 但在...

deviceone 跨平台開發

lz最近很忙 好久沒更新blog了好久沒搞android了 最近一直在學習js語言和跨平台開發工具那麼多 lz用的deviceone 說實話 真的很快速 官方封裝的各種框架底層 用起來簡單的不得了 簡單直接 粗暴 有效果 也有各位大神封裝的元件 唯一一點感覺不大爽的是說明文件寫的並不詳細 但基本上有...