Boost logo

Boost Users :

Subject: Re: [Boost-users] 'Undefined symbols' error when building Mira Groupware on Mac OS X
From: Max Bossino (max_at_[hidden])
Date: 2010-05-23 14:51:08


Hi Steven,

On 23 May 2010, at 20:46, Steven Watanabe wrote:

> Unfortunately, CMake suppresses some of the
> normal make output. Can you comment out
> the line in the Makefile that says
>
> # Suppress display of executed commands.
> $(VERBOSE).SILENT:
>
> run make Files-utility and report the results?

As requested:

-----
MBP:build Max$ make Files-utility
"/Applications/CMake 2.8-1.app/Contents/bin/cmake" -H/Users/Max/Documents/Projects/Mira/Branches/build -B/Users/Max/Documents/Projects/Mira/Branches/build --check-build-system CMakeFiles/Makefile.cmake 0
make -f CMakeFiles/Makefile2 Files-utility
Scanning dependencies of target mira
[ 20%] Building CXX object CMakeFiles/mira.dir/src/utilities/libmira-utility/MiraUtility.cpp.o
Linking CXX shared library bin/libmira.dylib
[ 20%] Built target mira
Scanning dependencies of target Files-utility
[ 40%] Building CXX object CMakeFiles/Files-utility.dir/src/utilities/files/files.cpp.o
[ 60%] Building CXX object CMakeFiles/Files-utility.dir/src/utilities/files/FileUtility.cpp.o
[ 80%] Building CXX object CMakeFiles/Files-utility.dir/src/utilities/files/FileServer.cpp.o
[100%] Building CXX object CMakeFiles/Files-utility.dir/src/utilities/files/FileConnection.cpp.o
Linking CXX shared library bin/libFiles-utility.dylib
Undefined symbols:
  "boost::filesystem::detail::remove_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)", referenced from:
      bool boost::filesystem::detail::remove_aux<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&, boost::filesystem::file_status)in FileUtility.cpp.o
  "boost::system::get_system_category()", referenced from:
      boost::asio::error::get_system_category() in files.cpp.o
      boost::system::error_code::error_code()in files.cpp.o
      __static_initialization_and_destruction_0(int, int)in files.cpp.o
      __static_initialization_and_destruction_0(int, int)in files.cpp.o
      boost::system::error_code::error_code()in FileUtility.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileUtility.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileUtility.cpp.o
      boost::asio::error::get_system_category() in FileServer.cpp.o
      boost::system::error_code::error_code()in FileServer.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileServer.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileServer.cpp.o
      boost::asio::error::get_system_category() in FileConnection.cpp.o
      boost::system::error_code::error_code()in FileConnection.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileConnection.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileConnection.cpp.o
  "typeinfo for boost::detail::thread_data_base", referenced from:
      typeinfo for boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > > >in files.cpp.o
      typeinfo for boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > > >in FileServer.cpp.o
  "boost::thread::start_thread()", referenced from:
      boost::thread::thread<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > > >(boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > >, boost::disable_if<boost::is_convertible<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > >&, boost::detail::thread_move_t<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > > > >, boost::thread::dummy*>::type)in files.cpp.o
      boost::thread::thread<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > > >(boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > >, boost::disable_if<boost::is_convertible<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > >&, boost::detail::thread_move_t<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > > > >, boost::thread::dummy*>::type)in FileServer.cpp.o
  "boost::filesystem::detail::not_found_error()", referenced from:
      boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >::m_init(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)in FileUtility.cpp.o
  "boost::filesystem::detail::symlink_status_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::system::error_code&)", referenced from:
      boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, boost::filesystem::file_status>::type boost::filesystem::symlink_status<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&, boost::system::error_code&)in FileUtility.cpp.o
  "boost::detail::thread_data_base::~thread_data_base()", referenced from:
      boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > > >::~thread_data()in files.cpp.o
      boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileServer>, boost::_bi::list1<boost::_bi::value<FileServer*> > > >::~thread_data()in files.cpp.o
      boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > > >::~thread_data()in FileServer.cpp.o
      boost::detail::thread_data<boost::_bi::bind_t<void, boost::_mfi::mf0<void, FileConnection>, boost::_bi::list1<boost::_bi::value<FileConnection*> > > >::~thread_data()in FileServer.cpp.o
  "vtable for boost::detail::thread_data_base", referenced from:
      boost::detail::thread_data_base::thread_data_base()in files.cpp.o
      boost::detail::thread_data_base::thread_data_base()in FileServer.cpp.o
  "boost::thread::~thread()", referenced from:
      _initialize in files.cpp.o
      FileServer::run() in FileServer.cpp.o
  "boost::filesystem::detail::dir_itr_first(void*&, void*&, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, boost::filesystem::file_status&, boost::filesystem::file_status&)", referenced from:
      boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >::m_init(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)in FileUtility.cpp.o
  "boost::filesystem::detail::file_size_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)", referenced from:
      boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, unsigned long>::type boost::filesystem::file_size<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)in FileConnection.cpp.o
  "boost::filesystem::detail::dir_itr_increment(void*&, void*&, std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, boost::filesystem::file_status&, boost::filesystem::file_status&)", referenced from:
      boost::filesystem::basic_directory_iterator<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >::increment()in FileUtility.cpp.o
  "boost::filesystem::detail::create_directory_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)", referenced from:
      boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, bool>::type boost::filesystem::create_directory<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)in FileUtility.cpp.o
  "boost::system::get_generic_category()", referenced from:
      __static_initialization_and_destruction_0(int, int)in files.cpp.o
      __static_initialization_and_destruction_0(int, int)in files.cpp.o
      __static_initialization_and_destruction_0(int, int)in files.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileUtility.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileUtility.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileUtility.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileServer.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileServer.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileServer.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileConnection.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileConnection.cpp.o
      __static_initialization_and_destruction_0(int, int)in FileConnection.cpp.o
  "boost::filesystem::detail::status_api(std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, boost::system::error_code&)", referenced from:
      boost::enable_if<boost::filesystem::is_basic_path<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >, bool>::type boost::filesystem::exists<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >(boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> const&)in FileUtility.cpp.o
  "boost::filesystem::detail::dir_itr_close(void*&, void*&)", referenced from:
      boost::filesystem::detail::dir_itr_imp<boost::filesystem::basic_path<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::filesystem::path_traits> >::~dir_itr_imp()in FileUtility.cpp.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make[3]: *** [bin/libFiles-utility.dylib] Error 1
make[2]: *** [CMakeFiles/Files-utility.dir/all] Error 2
make[1]: *** [CMakeFiles/Files-utility.dir/rule] Error 2
make: *** [Files-utility] Error 2
-----

Is that at all helpful?

Regards,

Max Bossino
Project Manager
http://miragroupware.org


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net