使用命令列方式編譯wxWidgets

2021-05-28 09:44:33 字數 1074 閱讀 1550

d:\wxwidgets-2.8.8\build\msw找到 config.vc,並以記事本方式開啟,進行一些修改:

unicode = 0改為1(使用unicode)

monolithic = 0改為1(把所有的庫都編在乙個檔案中。)

use_opengl=1(自帶opengl支援)

use_odbc=1(自帶odbc支援)

然後執行vc2008命令列提示符(在開始選單裡面找)

在dos下進入這個目錄d:\wxwidgets-2.8.8\build\msw【cd+空格+要去的目錄+回車即可】

ps:按tab可不停切換目錄,按shift+tab可恢復上個目錄!

執行nmake -f makefile.vc build=release就是release版本

執行nmake -f makefile.vc build=debug就是debug版本

【注】命令列build=release覆蓋掉config.vc裡面的build=debug。

如果要編譯dll, 就在config.vc裡面改shared = 1, runtime_libs = dynamic

可以參照:

由於要支援opengl和odbc,所以在config.vc和config.gcc中,分別將這兩個選項選中,編譯之後,再將setup.h中的wxuse_glcanvas設定為1。結果發現在使用wxglcanvas時出現莫名其妙的鏈結錯誤。

於是上網查資料,只有為數不多的幾篇英文資料中有相關資訊,但並沒有給出解決辦法。

最終才發現:在編譯wxwidgets之前,一定要先修改include/wx/msw/setup.h檔案,將其中的wxuse_glcanvas和wxuse_odbc選中!這樣編譯出來的庫檔案數量雖然一樣,但庫檔案大小是不一樣的 。

使用wx-config.exe查詢編譯過後的檔案包含的lib:

先在dos環境下進入wx-config.exe所在路徑

再【wx-config --prefix=wxwidgets的路徑 --wxcfg=vc_lib\mswud --cflags】

或者把cflags換成libs

cflags是編譯選項, libs是鏈結選項

使用命令列編譯vs專案

有時候我們想要編寫打包指令碼,但是如何編譯vs解決方案呢,其實vs已經給我們提供了乙個命令列工具devenv.exe,以vs2019為例 它在common7 ide 下 構建devenv.exe 解決方案的路徑 build project projname projectconfig projcon...

使用命令列工具編譯C 程式

c 可以使用命令列的方式進行編譯,其實這個我早就知道了,在我接觸cmake的時候知道的。但是,一直以來我沒有系統學習過c 相關的東西也就沒有嘗試更沒有積累。今天學習的過程中看到了這部分,簡單記錄小結一下。c 的命令列編譯程式叫做csc.exe,在使用的時候首先得把這個命令的所在目錄加入到path環境...

用命令列 g 編譯c

一.先裝mingw 只要你裝過ide其實都是有的 就看你找不找得到了 mac的同學不用管這一步 直接第二步 隨便開啟乙個cmd 輸入g v看看會不會報錯 報錯的話就要配置環境變數或者安裝 配置環境變數 如果沒有的話 點進去看 如果安裝過devc 或者別的都是安裝目錄自帶的 只需要環境變數加一下這個路...