C++ 对“\uuugxx\u personality\u sj0”的未定义引用,但所有内容都使用相同的编译器

C++ 对“\uuugxx\u personality\u sj0”的未定义引用,但所有内容都使用相同的编译器,c++,boost,mingw,codeblocks,wxwidgets,C++,Boost,Mingw,Codeblocks,Wxwidgets,编辑:这与另一个类似的问题不同,因为我检查了他们建议对库使用不同编译器的方式,但没有一种方式看起来像这里发生的事情 我正在尝试构建一个同时使用boost库和wxwidgets的应用程序。我已经使用MinGW静态编译了这两个库,这似乎已经成功了,尽管我在boost编译中收到了很多警告,例如: ./boost/concept/assert.hpp:44:5: note: in expansion of macro 'BOOST_CONCEPT_ASSERT_FN' BOOST_CONCEP

编辑:这与另一个类似的问题不同,因为我检查了他们建议对库使用不同编译器的方式,但没有一种方式看起来像这里发生的事情

我正在尝试构建一个同时使用boost库和wxwidgets的应用程序。我已经使用MinGW静态编译了这两个库,这似乎已经成功了,尽管我在boost编译中收到了很多警告,例如:

./boost/concept/assert.hpp:44:5: note: in expansion of macro 'BOOST_CONCEPT_ASSERT_FN'
     BOOST_CONCEPT_ASSERT_FN(void(*)ModelInParens)
     ^
./boost/concept_check.hpp:800:11: note: in expansion of macro 'BOOST_CONCEPT_ASSERT'
           BOOST_CONCEPT_ASSERT((Mutable_RandomAccessIterator<typename self::iterator>));
           ^
./boost/concept/detail/general.hpp:71:20: warning: typedef 'boost_concept_check801' locally defined but not used [-Wunused-local-typedefs]
       BOOST_PP_CAT(boost_concept_check,__LINE__)
                    ^
./boost/preprocessor/cat.hpp:29:34: note: in definition of macro 'BOOST_PP_CAT_I'
 #    define BOOST_PP_CAT_I(a, b) a ## b
/boost/concept/assert.hpp:44:5:注意:在宏“boost\u concept\u assert\u FN”的扩展中
BOOST\u概念\u断言\u FN(void(*)ModelInParens)
^
./boost/concept\u check.hpp:800:11:注意:在宏“boost\u concept\u ASSERT”的扩展中
BOOST_-CONCEPT_-ASSERT((可变_-RandomAccessIterator));
^
./boost/concept/detail/general.hpp:71:20:warning:typedef“boost\u concept\u check801”本地定义但未使用[-Wunused local typedefs]
增压器(增压器概念检查、管路检查)
^
./boost/preprocessor/cat.hpp:29:34:注意:在宏“boost\u PP\u cat\u I”的定义中
#定义BOOST_PP_CAT_I(a,b)a#b
但问题是,当我在代码块中编译我的应用程序时,我从标题中得到了错误

谷歌表示,这个问题是由我正在使用的一个库或我的应用程序使用不同的编译器编译而引起的。我确信他们都在使用mingw,boost有option toolset=gcc set,wxwidgets使用mingw32 makefile,codeblocks被设置为使用我系统上唯一的mingw/bin文件夹

我不确定的是,它对mingw中使用的确切编译器有什么影响,如果boost是用gcc完成的,而wxwidgets是用g++完成的,这会有问题吗

这是我的编译器从代码块输出的结果,还有很多其他错误和警告,标题错误只是最上面的错误:


我能做些什么?谢谢

可能重复我已经看过了,答案是用户使用了不同的编译器,但我使用的是同一个编译器。@GemmaB89不是所有的东西都使用同一个编译器,就是没有链接到
libgcc[\u s]
。我把钱花在前者上,也尽量不使用IDE,因为它可能会做一些事情。还有一个“也是”——你读过了吗?以下是您的错误。谷歌tho上的第三个链接。@rubenvb-gcc和g++之间有关系吗?我认为boost使用gcc,但我看不出有什么方法可以改变这一点。我尝试更改为toolset=g++,但它只是抛出了一个错误。我如何链接libgcc[\u s]?