vs2015+qt5.9.7配置跨平台的工程


環境:vs2015 update 3 + qt 5.9.7

問題:代碼中存在中文無法編譯

附加目的:支持跨平台

問題分析:代碼的編碼格式導致中文編譯錯誤,windows默認gb2312編碼,qt默認utf8無簽名編碼

     若想支持跨平台,那必須qt+mingw能編譯,那編碼格式必須為utf8無簽名

       而windows想要識別utf8就必須加入簽名

 

過程:

    微軟給出的vs支持utf-8的方案:https://docs.microsoft.com/en-us/cpp/build/reference/utf-8-set-source-and-executable-character-sets-to-utf-8?view=vs-2017

這樣設置后,vs默認能編譯含有中文的utf-8代碼了。但qt依舊沒法使用vs的編譯工具進行編譯。那接下來問題就是如何把這個選項設置到qt工程中去。辦法也簡單,在pro文件

最后加入兩行:

win32:QMAKE_CXXFLAGS += /utf-8
win32:QMAKE_CFLAGS += /utf-8

到此問題解決。

但是沒法用vs去新建文件,因為vs新建文件時默認使用系統編碼。

vs裝了qt-vs-addin后,在新建工程和添加類或者文件時選擇qt文件即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM