-
Notifications
You must be signed in to change notification settings - Fork 60
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
Boost 1.81 not working (on macOS) - non-default boost location not supported by CMakeLists #35
Comments
According to the boostorg/phoenix#112 (comment) a workaround for the whole 1.81 issue is to do |
Hi Peter, totally agree. The Boost Thanks! |
Hi Knute, I'll let you know once I got it all lined up nicely in the PRs before we merge. I'd like to review and clean up the boost include settings in the cmake too, in Sparta, it's added globally instead of specific targets, which makes you include boost when it might not be needed. |
This fixes #35 and tracks the changes in Sparta [PR397(sparcians/map#397), which are merges into Sparta main already. --------- Signed-off-by: Peter Debacker <[email protected]> Signed-off-by: Knute Lingaard <[email protected]> Co-authored-by: Peter Debacker <[email protected]> Co-authored-by: Knute Lingaard <[email protected]> Co-authored-by: Knute Lingaard <[email protected]>
Hi,
I've had some issues for Olympia to build on macOs (M1, running Ventura 13.1), not sure if the issue is present in other systems: default boost installed with
brew install boost
gives v1.81, which has issues in Phoenix which cause it to fail with duplicate symbols when linking (boostorg/phoenix#111). (also Sparta build fails on this)Just for other people running into this, here's my journey on this issue:
First of all: not to worry, I've also got boost v1.76 via homebrew, but it's not in a default location. So I had to build Sparta, Olympia and so also sta_lib with a non default boost location.
Then it got a bit complicated:
-DBoost_DIR=/opt/homebrew/Cellar/[email protected]/1.76.0_3/lib/cmake/Boost-1.76.0
to point it to the cake folder for the right boost version. (it does not, for some reason, use the cmake default included files to find boost)sparta-config.cmake
so needs the same command line option for make to find Boost.-DBOOST_ROOT=/opt/homebrew/Cellar/[email protected]/1.76.0_3
Which makes for a cmake command that gets a bit verbose:
Which then passes cmake but fails at build, because boost is not added as an include for
core
andmss
.Which I've fixed in the respective CMakeLists.txt, PR incoming soon.
But more generally: it would be nice to harmonise the boost config across Sparta, Olympia and stf_lib, so only 1 command line arg is needed to use it if it's in a non-default place. This avoids the double command line args needed in cmake.
I am willing to file a PR against Sparta as well to harmonise it to the standard cmake way of finding boost, but the comments in the CMakeLists.txt there seem to hint the custom way is there for (historic) reasons.
The text was updated successfully, but these errors were encountered: