VC新版本編譯的程式如何在老系統上執行

2021-07-07 03:54:27 字數 1101 閱讀 3969

做專案過程中,在vc2012上編譯的程式在xp上是不能執行的,以下是解決問題的方法!!!

方法就是需要修改鏈結引數**********====

我們要做的是修改qmake.conf檔案中的引數,檔案路徑根據開發環境不同而不同

下面以5.1.1 + vc2012為例:qt

官方安裝版路徑:

\5.1.1\msvc2012\mkspecs\win32-msvc2012

自己編譯的路徑:

\mkspecs\win32-msvc2012

自己根據版本和編譯器找到對應的路徑即可

開啟qmake.conf找到qmake_lflags_console和qmake_lflags_windows,這兩行是在一起的

qmake_lflags_console    = /subsystem:console@qmake_subsystem_suffix@

qmake_lflags_windows    = /subsystem:windows@qmake_subsystem_suffix@

其中@qmake_subsystem_suffix@是乙個佔位符。。。。。。。。。。

第一種方法:直接在檔案中修改

在每行後面加上",5.01",變為

qmake_lflags_console    = /subsystem:console

,5.01

qmake_lflags_windows    = /subsystem:windows

,5.01

第二種方法:在.pro檔案中新增

qmake_lflags_console

+=5.01

qmake_lflags_windows

+=5.01

編譯過程中會根據賦給他的變數自動替換值,並輸出到最終的結果檔案中。。。。。

編譯生成的庫檔案或者exe檔案,作業系統在執行時要解析這些檔案,首先就會從檔案中的乙個段識別符號判斷該程式

是否可在當前作業系統執行,因此5.01表示xp,那麼xp系統就能識別檔案,並繼續解析程式中的**段,資料段等資訊,並運     行。

最後,儲存後清理一下專案,重新生成出的程式即可執行在xp上了。

原始碼編譯新版本的mysql5 5 9

建立 mysql 安裝目錄 root xuhost opt mkdir usr local mysql5.5.9 建立資料目錄 root xuhost opt mkdir var mysql root xuhost opt chown mysql.mysql r var mysql 安裝cmake ...

在Windows下編譯最新版本的Libjingle

注意不要使用srtp 1.4.4,因為這個版本遺漏了libjingle所使用的一些extensions 如果你的expat和srtp包在其他位置或者名稱不一樣,需要對應地修改talk libjingle.scons 解決方法 must come before ks.h for pkey audioe...

原始碼編譯安裝最新版本的 Python

完全可以參照這個教程 但是要注意的是,configure有很多的 flag 可以設定,其中乙個重要的是 enable shared,開啟該 flag 後,安裝時不僅會安裝libpython3.7m.a靜態鏈結庫,還會同時安裝libpython3.7m.so共享庫。這個共享庫有時候會用到!比如 bui...