所有,
首先道歉,如果这属于SO的Unix / Linux部分。但是这个问题在那些问题之间有一条非常细微的界限。如果你觉得我应该发布那里让我知道,我会移动它。所以这里:
我试图在Oracle Solaris上编译一个可以在Linux上使用Solaris Studio成功构建的程序。
但是,我在STL fuhnctions中遇到了很多链接器错误。我的猜测是生成的Makefile是针对Linux / gcc的,并没有考虑任何其他内容。
在Solaris中搜索符号的方法是什么?
为Makefile生成的命令是:
伊戈尔科罗特
星期二,4月16日,下午7:26(15小时前)
to wx-dev嗨,我试图看看wxWidgets 3.1.1是否可以在最新的Solaris Studio 12.6的Oracle Solaris上使用。
然而,库正确编译,当我尝试构建最小的时,我得到了这个:
igor@solaris:~/wxWidgets/buildSol/samples/minimal$ make
CC -o minimal minimal_minimal.o
-L/export/home/igor/wxWidgets/buildSol/lib
-R/export/home/igor/wxWidgets/buildSol/lib -mt -lwx_gtk3u_core-3.1
-lwx_baseu-3.1 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0
-latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0
-lgobject-2.0 -lgthread-2.0 -lglib-2.0 -lX11 -lXxf86vm -lSM -lgtk-3
-lgdk-3 -lpangocairo-1.0 -lpango-1.0 -latk-1.0 -lcairo-gobject -lcairo
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lnotify
-lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lXtst
-lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig
-lfreetype -lpng -lz -ljpeg -ltiff -llzma -lwxregexu-3.1 -mt -lz
-lsecret-1 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lm -lz -lsecret-1
-lgio-2.0 -lgobject-2.0 -lglib-2.0 -lm
以下是它产生的几个错误:
Undefined first referenced
symbol in file
std::wstring::_M_rep()const
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
jpeg_CreateDecompress(jpeg_decompress_struct*, int, unsigned int)
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
std::wstring::capacity()const
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
jpeg_resync_to_restart(jpeg_decompress_struct*, int)
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
std::streambuf::pbackfail(int)
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
std::wstring::insert(__gnu_cxx::__normal_iterator<wchar_t*,
std::wstring>, wchar_t)
/export/home/igor/wxWidgets/buildSol/lib/libwx_baseu-3.1.so
std::wstring::basic_string()
/export/home/igor/wxWidgets/buildSol/lib/libwx_baseu-3.1.so
std::wstring::basic_string() minimal_minimal.o
std::wstring::~basic_string()
/export/home/igor/wxWidgets/buildSol/lib/libwx_baseu-3.1.so
std::wstring::~basic_string() minimal_minimal.o
std::wstring::operator=(wchar_t)
/export/home/igor/wxWidgets/buildSol/lib/libwx_gtk3u_core-3.1.so
TIA!
我认为这是一个C ++标准库问题。那里有不同的C ++实现。看看您是否可以在Solaris上找到与您的匹配的其他编译器/库。