Skip to content

Instantly share code, notes, and snippets.

@monolithed
Forked from biot023/gist:2318842
Created November 17, 2012 14:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save monolithed/4096202 to your computer and use it in GitHub Desktop.
Save monolithed/4096202 to your computer and use it in GitHub Desktop.
Failing cppcms build
~/src/cppcms-1.0.1/build$ make
[ 0%] Building CXX object booster/CMakeFiles/booster.dir/lib/ptime/src/posix_time.cpp.o
[ 0%] Building CXX object booster/CMakeFiles/booster.dir/lib/ptime/src/ctime.cpp.o
[ 1%] Building CXX object booster/CMakeFiles/booster.dir/lib/regex/src/pcre_regex.cpp.o
[ 1%] Building CXX object booster/CMakeFiles/booster.dir/lib/system/src/posix_error.cpp.o
[ 1%] Building CXX object booster/CMakeFiles/booster.dir/lib/system/src/windows_error.cpp.o
[ 2%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/aio_category.cpp.o
[ 2%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/deadline_timer.cpp.o
[ 2%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/endpoint.cpp.o
[ 3%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/io_service.cpp.o
[ 3%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/reactor.cpp.o
[ 3%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/select_iterrupter.cpp.o
[ 4%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/basic_io_device.cpp.o
[ 4%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/basic_socket.cpp.o
[ 4%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/acceptor.cpp.o
[ 5%] Building CXX object booster/CMakeFiles/booster.dir/lib/aio/src/stream_socket.cpp.o
[ 5%] Building CXX object booster/CMakeFiles/booster.dir/lib/smart_ptr/src/sp_counted_base.cpp.o
[ 5%] Building CXX object booster/CMakeFiles/booster.dir/lib/smart_ptr/src/atomic_counter.cpp.o
[ 5%] Building CXX object booster/CMakeFiles/booster.dir/lib/shared_object/src/shared_object.cpp.o
[ 6%] Building CXX object booster/CMakeFiles/booster.dir/lib/log/src/log.cpp.o
[ 6%] Building CXX object booster/CMakeFiles/booster.dir/lib/iostreams/src/streambuf.cpp.o
[ 6%] Building CXX object booster/CMakeFiles/booster.dir/lib/nowide/src/convert.cpp.o
[ 7%] Building CXX object booster/CMakeFiles/booster.dir/lib/backtrace/src/backtrace.cpp.o
[ 7%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/encoding/codepage.cpp.o
[ 7%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/date_time.cpp.o
[ 8%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/format.cpp.o
[ 8%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/formatting.cpp.o
[ 8%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/generator.cpp.o
[ 9%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/ids.cpp.o
[ 9%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/localization_backend.cpp.o
[ 9%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/message.cpp.o
[ 10%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/shared/mo_lambda.cpp.o
[ 10%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/util/codecvt_converter.cpp.o
[ 10%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/util/default_locale.cpp.o
[ 11%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/util/info.cpp.o
[ 11%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/util/locale_data.cpp.o
[ 11%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/boundary.cpp.o
[ 11%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/codecvt.cpp.o
[ 12%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/collator.cpp.o
[ 12%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/conversion.cpp.o
[ 12%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/date_time.cpp.o
[ 13%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/formatter.cpp.o
[ 13%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/icu_backend.cpp.o
[ 13%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/numeric.cpp.o
[ 14%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/icu/time_zone.cpp.o
[ 14%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/posix/codecvt.cpp.o
[ 14%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/posix/collate.cpp.o
[ 15%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/posix/converter.cpp.o
[ 15%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/posix/numeric.cpp.o
[ 15%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/posix/posix_backend.cpp.o
[ 16%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/std/codecvt.cpp.o
[ 16%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/std/collate.cpp.o
[ 16%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/std/converter.cpp.o
[ 17%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/std/numeric.cpp.o
[ 17%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/std/std_backend.cpp.o
[ 17%] Building CXX object booster/CMakeFiles/booster.dir/lib/locale/src/util/gregorian.cpp.o
[ 17%] Building CXX object booster/CMakeFiles/booster.dir/lib/thread/src/pthread.cpp.o
Linking CXX shared library libbooster.dylib
Undefined symbols for architecture x86_64:
"_libiconv_close", referenced from:
booster::locale::conv::impl::iconverter_base::~iconverter_base() in codepage.cpp.o
booster::locale::conv::impl::iconv_to_utf<char>::open(char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<wchar_t>::~iconv_from_utf() in codepage.cpp.o
booster::locale::conv::impl::iconverter_base::~iconverter_base() in codepage.cpp.o
booster::locale::conv::impl::iconv_between::~iconv_between() in codepage.cpp.o
booster::locale::conv::impl::iconv_to_utf<char>::~iconv_to_utf() in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<char>::~iconv_from_utf() in codepage.cpp.o
...
"_libiconv_open", referenced from:
booster::locale::conv::impl::iconv_to_utf<char>::open(char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<char>::open(char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::conv::impl::iconv_between::open(char const*, char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::conv::impl::iconv_to_utf<wchar_t>::open(char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<wchar_t>::open(char const*, booster::locale::conv::method_type) in codepage.cpp.o
booster::locale::impl_posix::create_iconv_converter(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) in codecvt.cpp.o
booster::locale::impl_posix::mb2_iconv_converter::to_unicode(char const*&, char const*) in codecvt.cpp.o
...
"_libiconv", referenced from:
booster::locale::conv::impl::iconv_between::convert(char const*, char const*) in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<wchar_t>::convert(wchar_t const*, wchar_t const*) in codepage.cpp.o
booster::locale::conv::impl::iconv_to_utf<char>::convert(char const*, char const*) in codepage.cpp.o
booster::locale::conv::impl::iconv_from_utf<char>::convert(char const*, char const*) in codepage.cpp.o
std::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> > booster::locale::conv::impl::iconverter_base::real_convert<wchar_t, char>(char const*, char const*) in codepage.cpp.o
booster::locale::impl_posix::create_iconv_converter(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) in codecvt.cpp.o
booster::locale::impl_posix::mb2_iconv_converter::to_unicode(char const*&, char const*) in codecvt.cpp.o
...
ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status
make[2]: *** [booster/libbooster.0.0.0.dylib] Error 1
make[1]: *** [booster/CMakeFiles/booster.dir/all] Error 2
make: *** [all] Error 2
@monolithed
Copy link
Author

First of old, look at the one:

uname -a
file /usr/lib/libiconv.2.dylib
nm /opt/local/lib/libiconv.dylib
otool -L /usr/local/lib/libiconv.2.dylib

So try:

sudo cp /opt/local/lib/libiconv* /usr/lib/

@monolithed
Copy link
Author

But be very careful, your system can be failed!

@monolithed
Copy link
Author

The best solution is to specify the place where are the libraries: /opt/local/lib/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment