最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Mingw64編譯wxWidgets 3.0.2常見錯(cuò)誤分析

 更新時(shí)間:2016年11月30日 21:39:19   投稿:mdxy-dxy  
這篇文章主要介紹了Mingw64編譯wxWidgets 3.0.2常見錯(cuò)誤分析,需要的朋友可以參考下

使用Mingw64編譯wxWidgets3.0.2,首先得下載wxMSW-Setup-3.0.2.exe(https://sourceforge.net/projects/wxwindows/files/3.0.2/wxMSW-Setup-3.0.2.exe,然后按照如下步驟編譯(假設(shè)要編譯一個(gè)Unicode共享庫版的wxWidgets):

cd X:\wxWidgets-3.0.2\build\msw

    make -f makefile.gcc SHARED=1 UNICODE=1

  然而編譯到一半,從C代碼變?yōu)镃++代碼時(shí),就會(huì)產(chǎn)生如下錯(cuò)誤(有許多類似錯(cuò)誤,只選取一處):

In file included from e:\mingwd\mingw\include\c++\5.2.0\type_traits:35:0,
                   from ..\..\include/wx/strvararg.h:25,
                   from ..\..\include/wx/string.h:46,
                   from ..\..\include/wx/any.h:19,
                   from ../../src/common/any.cpp:18:
e:\mingwd\mingw\include\c++\5.2.0\bits\c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must be enabled with the -std=c++11 or -std=gnu++11 compiler options.

  既然只是c++11支持沒有打開的問題,只要改一下CXXFLAGS即可,于是乎,按如下命令重新編譯。

    make -f makefile.gcc CXXFLAGS="-std=c++11" SHARED=1 UNICODE=1 clean

    make -f makefile.gcc CXXFLAGS="-std=c++11" SHARED=1 UNICODE=1

  這次編譯完了所有中間件,但是到鏈接時(shí)候又出了問題:

    E:\wxWidgets-3.0.2\lib\gcc_lib64/libwxmsw30ud.a(monolib_filename.o): In function `wxChmod(wxString const&, unsigned short)':
    E:\wxWidgets-3.0.2\build\msw/../../include/wx/filefn.h:513: undefined reference to `wxMSLU__wchmod(wchar_t const*, int)'
    E:\wxWidgets-3.0.2\lib\gcc_lib64/libwxmsw30ud.a(monolib_filename.o): In function `wxOpen(wxString const&, int, unsigned short)':
    E:\wxWidgets-3.0.2\build\msw/../../include/wx/filefn.h:515: undefined reference to `wxMSLU__wopen(wchar_t const*, int, int)'
    E:\wxWidgets-3.0.2\lib\gcc_lib64/libwxmsw30ud.a(monolib_file.o): In function `wxRemove(wxString const&)':
    E:\wxWidgets-3.0.2\build\msw/../../include/wx/wxcrt.h:758: undefined reference to `wxMSLU__wremove(wchar_t const*)'
    E:\wxWidgets-3.0.2\lib\gcc_lib64/libwxmsw30ud.a(monolib_file.o): In function `wxAccess(wxString const&, unsigned short)':
......

  這實(shí)在是令我百思不得其解了,翻遍了docs文件夾的每個(gè)角落,終于在install.txt中找到了答案,里面有這么一句話:

C++11 note: If you want to compile wxWidgets in C++11 mode, you currently have
            to use -std=gnu++11 switch as -std=c++11 disables some extensions
            that wxWidgets relies on. I.e. please use CXXFLAGS="-std=gnu++11".

  說的很清楚,不能用”std=c++11"進(jìn)行編譯,這會(huì)導(dǎo)致一些wxWidgets依賴的extensions(擴(kuò)展名?)被屏蔽的問題。然后用以下命令重新編譯,就成功了。

    make -f makefile.gcc CXXFLAGS="-std=gnu++11" SHARED=1 UNICODE=1 clean

    make -f makefile.gcc CXXFLAGS="-std=gnu++11" SHARED=1 UNICODE=1

后記

  上面說到關(guān)于extensions,這里的意思應(yīng)該是擴(kuò)展,即gnu的g++(gcc)提供給c/c++代碼除c++標(biāo)準(zhǔn)以外的支持。如果這些支持沒有被啟用,自然會(huì)導(dǎo)致上面像wxWidgets的庫編譯失敗,不過這么依賴語言外的額外實(shí)現(xiàn)也不見得是件好事吧。

相關(guān)文章

  • C++/Php/Python 語言執(zhí)行shell命令的方法(推薦)

    C++/Php/Python 語言執(zhí)行shell命令的方法(推薦)

    下面小編就為大家?guī)硪黄狢++/Php/Python 語言執(zhí)行shell命令的方法(推薦)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-03-03
  • C語言深入細(xì)致講解動(dòng)態(tài)內(nèi)存管理

    C語言深入細(xì)致講解動(dòng)態(tài)內(nèi)存管理

    動(dòng)態(tài)內(nèi)存是相對(duì)靜態(tài)內(nèi)存而言的。所謂動(dòng)態(tài)和靜態(tài)就是指內(nèi)存的分配方式。動(dòng)態(tài)內(nèi)存是指在堆上分配的內(nèi)存,而靜態(tài)內(nèi)存是指在棧上分配的內(nèi)存,本文帶你深入探究C語言中動(dòng)態(tài)內(nèi)存的管理
    2022-05-05
  • C/C++數(shù)據(jù)對(duì)齊詳細(xì)解析

    C/C++數(shù)據(jù)對(duì)齊詳細(xì)解析

    通常我們?cè)趯懘a的時(shí)候是不需要考慮對(duì)齊的影響的,都是依賴編譯器來為我們選擇適合的對(duì)齊策略,我們也可以通過傳遞給編譯器預(yù)編譯指令來指定數(shù)據(jù)對(duì)齊的方法
    2013-10-10
  • C語言實(shí)現(xiàn)五子棋對(duì)戰(zhàn)系統(tǒng)

    C語言實(shí)現(xiàn)五子棋對(duì)戰(zhàn)系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)五子棋對(duì)戰(zhàn)系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • C語言memset函數(shù)詳解

    C語言memset函數(shù)詳解

    這篇文章主要介紹了C語言中的memset()函數(shù),包括其與memcpy()函數(shù)的區(qū)別,需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-09-09
  • 理解C++編程中的std::function函數(shù)封裝

    理解C++編程中的std::function函數(shù)封裝

    這篇文章主要介紹了理解C++編程中的std::function函數(shù)封裝,std::function是C++11標(biāo)準(zhǔn)中的新特性,需要的朋友可以參考下
    2016-04-04
  • C++設(shè)計(jì)模式之代理模式(Proxy)

    C++設(shè)計(jì)模式之代理模式(Proxy)

    這篇文章主要為大家詳細(xì)介紹了C++設(shè)計(jì)模式之代理模式的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • EasyC++自動(dòng)存儲(chǔ)持續(xù)性

    EasyC++自動(dòng)存儲(chǔ)持續(xù)性

    這篇文章主要介紹了EasyC++自動(dòng)存儲(chǔ)持續(xù)性,下面文章圍繞EasyC++自動(dòng)存儲(chǔ)持續(xù)性的相關(guān)資料展開全文資料,需要的小伙伴可以參考一下下面文章的具體內(nèi)容,希望對(duì)你的學(xué)習(xí)有所幫助
    2021-12-12
  • C++使用yaml-cpp庫操作YAML的示例代碼

    C++使用yaml-cpp庫操作YAML的示例代碼

    配置文件有利于我們靈活配置工程,解決大量重復(fù)勞動(dòng),也方便調(diào)試,YAML?是一種人類可讀的數(shù)據(jù)序列化格式,它使用縮進(jìn)和特定的符號(hào)來表示數(shù)據(jù)結(jié)構(gòu),在本文中,我們將詳細(xì)介紹如何在?C++?中使用?yaml-cpp?庫來解析和生成?YAML?格式的數(shù)據(jù),需要的朋友可以參考下
    2024-10-10
  • C/C++中指針和引用之相關(guān)問題深入研究

    C/C++中指針和引用之相關(guān)問題深入研究

    從內(nèi)存分配上看,程序?yàn)橹羔樧兞糠峙鋬?nèi)存區(qū)域,而不為引用分配內(nèi)存區(qū)域,因?yàn)橐寐暶鲿r(shí)必須初始化,從而指向一個(gè)已經(jīng)存在的對(duì)象。引用不能指向空值
    2013-10-10

最新評(píng)論

桃园县| 伊宁市| 阿拉尔市| 调兵山市| 贵港市| 延庆县| 南华县| 遂宁市| 秀山| 百色市| 元阳县| 新兴县| 萨嘎县| 永福县| 松桃| 池州市| 盐亭县| 北安市| 新兴县| 滦南县| 中山市| 景泰县| 绍兴县| 公安县| 文登市| 咸宁市| 南汇区| 文成县| 巴林左旗| 右玉县| 正镶白旗| 交城县| 独山县| 阿坝县| 贡觉县| 湟中县| 锦州市| 蓬安县| 杨浦区| 云阳县| 卫辉市|