Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Failed to build 1.48.0 under Mac OS X Lion #3

Open
likan999 opened this issue Feb 24, 2012 · 2 comments
Open

Failed to build 1.48.0 under Mac OS X Lion #3

likan999 opened this issue Feb 24, 2012 · 2 comments

Comments

@likan999
Copy link

When building, it stops at building shared library of chrono, which says undefined reference to some symbols in system module.

From the linking.txt, seems like the linking command doesn't link the other dependence libraries. This works for linux system, but for on MacOSX, leaving undefined symbols there will cause linker errors:
http://stackoverflow.com/questions/3695234/what-is-the-deal-with-undefined-symbols-in-a-shared-library-or-dylib

I wonder if anyone else has succeeded building on Mac so it is just my misconfiguration of toolchains (I used macports).

Another question is if it really has issues building on Mac, then do you have any plan to support the Mac platform?

Thanks.

@da115115
Copy link
Member

Note that CMake is not the officially supported building framework. Boost.Jam is. AFAIK, Mac is officially supported by Boost. If there is an issue with Boost, tickets must be open in their official (Trac) Web site: http://svn.boost.org/trac/boost/newticket

Unfortunately, I have no time to try and test Boost on Mac OS. If you achieved to eventually build Boost with CMake on Mac OS, though, I would appreciate that you submit the corresponding CMake-related patches here, for instance as pull requests.

In any case, thanks for your valuable feedback

@fuhlig1
Copy link

fuhlig1 commented Feb 25, 2013

As likan999 already mentioned there is a problem linking some boost libraries when using pocb. The issue here is that the linker from Mac OS does not support "lazy linking" in the default setup. So one has either change the default settings by adding some linker flags or to pass the needed libraries which can easily achieved with pocb. I choose the second option to compile Boost with CMake.

There are some CMakeLists.txt and module.cmake files which have to be slightly changed.

There was also an issue with the compilation of the locale library if ICU wasn't installed in the system. In such a case the build process crashed with some missing declarations. I changed the build process to check in such a case if the iconv library is installed and use this one as fallback solution. With this change the compilation works.

Another problem was compiling the mpi library. Here the variables haven't been passed correctly. After a small change also this library is compiled correctly.

I had up to now only time to check the compilation for Mac OSX 10.6. I hope I can check it the next days also for Mac OSX 10.8 and some Linux systems.

You can find my changes in the pull request I have created. Since I amnew to git and github I hope I did it correctly.

Ciao

Florian

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants