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

"Duplicate symbols" linker error with Boost 1.81 #320

Closed
AlexBork opened this issue Jan 16, 2023 · 11 comments · Fixed by #321
Closed

"Duplicate symbols" linker error with Boost 1.81 #320

AlexBork opened this issue Jan 16, 2023 · 11 comments · Fixed by #321
Assignees

Comments

@AlexBork
Copy link
Contributor

After updating Boost from Version 1.79 to 1.81, compilation fails during the linking process of the Storm library due to multiple duplicate symbol errors, apparently stemming from the same two files.

Console output:

[ 93%] Linking CXX shared library ../../lib/libstorm.dylib
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/storm.dir/abstraction/MenuGameRefiner.cpp.o
    CMakeFiles/storm.dir/modelchecker/abstraction/GameBasedMdpModelChecker.cpp.o
ld: 10 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
@AlexBork
Copy link
Contributor Author

I will look further into this, mostly just wanted to document this in case anyone also wants to perform a Boost update.

@AlexBork AlexBork self-assigned this Jan 16, 2023
@volkm
Copy link
Contributor

volkm commented Jan 16, 2023

Might be a Booost issue:
boostorg/phoenix#111

@AlexBork
Copy link
Contributor Author

Yep, also just stumbled upon that one. I guess best idea for now is to throw a warning if that Boost version is detected? I will also try out the workaround.

@sjunges
Copy link
Contributor

sjunges commented Jan 16, 2023

Does it compile with -DBOOST_PHOENIX_STL_TUPLE_H_ ??

In that case: check for boost version, and if it is 1.81 or newer, use this flag?

@volkm
Copy link
Contributor

volkm commented Jan 16, 2023

I am currently trying to see if that indeed works.

@abadithela
Copy link

Hi, I get this error as well, which ends with:

clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [lib/libstorm.dylib] Error 1
make[2]: *** [src/storm/CMakeFiles/storm.dir/all] Error 2
make[1]: *** [CMakeFiles/check.dir/rule] Error 2
make: *** [check] Error 2

How do I add that tag during compilation? Can you please provide the command for that?

@abadithela
Copy link

When I try to check for all dependencies using cmake .. command inside the build folder, I get the following warnings:

CMake Warning at /usr/local/Cellar/cmake/3.25.1/share/cmake/Modules/FindBoost.cmake:1384 (message):
  New Boost version may have incorrect or missing dependencies and imported
  targets
Call Stack (most recent call first):
  /usr/local/Cellar/cmake/3.25.1/share/cmake/Modules/FindBoost.cmake:1507 (_Boost_COMPONENT_DEPENDENCIES)
  /usr/local/Cellar/cmake/3.25.1/share/cmake/Modules/FindBoost.cmake:2118 (_Boost_MISSING_DEPENDENCIES)
  resources/3rdparty/CMakeLists.txt:83 (find_package)
  CMakeLists.txt:435 (include)

I get these warnings for both versions 1.6.4 and 1.7.0 (stable releases of storm)

@AlexBork
Copy link
Contributor Author

It indeed appears to be an issue with Boost. @volkm has submitted a pull request that automatically adds the flag. I will check it today.
For now, you can either downgrade to a previous Boost Version or add the -DBOOST_PHOENIX_STL_TUPLE_H_ to the cmake call.
The warning you describe is automatically thrown by cmake, so it is not something directly related to Storm. My guess is that there is no cmake version yet where compatibility with Boost 1.81 is checked.

@AlexBork AlexBork removed the bug label Jan 17, 2023
@volkm
Copy link
Contributor

volkm commented Jan 17, 2023

The latest storm version should work again now.

@abadithela: Your compilation should be successful after updating Storm. If the issue persists, feel free to reopen this issue.

@abadithela
Copy link

Hi @volkm:

I am using storm-1.7.0 and the corresponding version of stormy (1.7.0). I added the workaround that you have here in the CMakeLists.txt inside the resources folder for Storm-1.7.0. I then built that version of Storm and it was successful. However, then in building the stormy version, I get a similar error like above. I was thinking that a similar fix would work also in stormpy. Where do I add it? Also in the resources/pybind11/CMakeLists.txt? That file doesn't seem to have anything regarding boost so I am not sure if that's the correct place to put it in...

[100%] Linking CXX shared module /Users/apurvabadithela/Documents/software/stormpy-1.7.0/lib/stormpy/core.cpython-310-darwin.so
ld: warning: -undefined dynamic_lookup may not work with chained fixups
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/counterexample.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/core.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/input.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/bisimulation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/modelchecking.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/environment.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/analysis.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/result.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/simulator.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg9' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg8' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg7' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg6' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg5' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg4' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg3' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg2' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg1' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
duplicate symbol 'boost::phoenix::placeholders::uarg10' in:
    CMakeFiles/core.dir/src/mod_core.cpp.o
    CMakeFiles/core.dir/src/core/transformation.cpp.o
ld: 100 duplicate symbols for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[3]: *** [/Users/apurvabadithela/Documents/software/stormpy-1.7.0/lib/stormpy/core.cpython-310-darwin.so] Error 1
make[2]: *** [CMakeFiles/core.dir/all] Error 2
make[1]: *** [CMakeFiles/core.dir/rule] Error 2
make: *** [core] Error 2
Traceback (most recent call last):
  File "/Users/apurvabadithela/Documents/software/stormpy-1.7.0/setup.py", line 238, in <module>
    setup(
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/__init__.py", line 87, in setup
    return distutils.core.setup(**attrs)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
    return run_commands(dist)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
    dist.run_commands()
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
    self.run_command(cmd)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
    super().run_command(command)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/command/develop.py", line 34, in run
    self.install_for_development()
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/command/develop.py", line 114, in install_for_development
    self.run_command('build_ext')
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 318, in run_command
    self.distribution.run_command(command)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/dist.py", line 1208, in run_command
    super().run_command(command)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
    cmd_obj.run()
  File "/Users/apurvabadithela/Documents/software/stormpy-1.7.0/setup.py", line 196, in run
    self.build_extension(ext, cmake_args, build_args)
  File "/Users/apurvabadithela/Documents/software/stormpy-1.7.0/setup.py", line 235, in build_extension
    subprocess.check_call(['cmake', '--build', '.', '--target', ext.name] + build_args, cwd=self.build_temp)
  File "/Users/apurvabadithela/opt/anaconda3/envs/pacti_env/lib/python3.10/subprocess.py", line 369, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['cmake', '--build', '.', '--target', 'core', '--config', 'Debug', '--', '-j8']' returned non-zero exit status 2.

@volkm
Copy link
Contributor

volkm commented Jan 17, 2023

I saw the same problem with stormpy. Please see the following PR moves-rwth/stormpy#108 for how to add the workaround in stormpy. Note that we will soon merge this into the main branch of stormpy as well.

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

Successfully merging a pull request may close this issue.

4 participants