Opened 7 years ago
Last modified 5 years ago
#11561 new Bugs
Build fails with threading=single,multi
Reported by: | Owned by: | Vladimir Prus | |
---|---|---|---|
Milestone: | To Be Determined | Component: | build |
Version: | Boost 1.59.0 | Severity: | Problem |
Keywords: | Cc: |
Description
Hello, I'm the maintainer of boost in the MacPorts package management system. We just updated our boost to 1.59.0, after which we got a report that the build fails if threading=single,multi
is used. The error is:
error: Name clash for '<pstage/lib>libboost_atomic-mt.dylib' error: error: Tried to build the target twice, with property sets having error: these incompatible properties: error: error: - none error: - <dll-path>/opt/local/bin error: error: Please make sure to have consistent requirements for these error: properties everywhere in your project, especially for install error: targets.
This used to work with 1.58.0 and earlier. Our default is threading=multi
which still works fine with 1.59.0.
Attachments (1)
Change History (7)
comment:1 by , 7 years ago
Component: | None → build |
---|---|
Owner: | set to |
comment:2 by , 7 years ago
comment:3 by , 7 years ago
I am not working on a fix; since I don't have a Mac and don't use MacPorts I have no way to reproduce this problem and investigate. In fact, I don't think that Boost uses "/opt/local/bin" anywhere.
Is there a chance this issue is reduced to a specific b2 command line, with a minimal set of libraries, and not requiring MacPorts. Output of --debug-building might also be helpful.
by , 7 years ago
Attachment: | main.log.bz2 added |
---|
build failure of boost 1.60.0 with threading=single,multi
comment:4 by , 7 years ago
The b2
command line that was used was given in the log file attached to the MacPorts bug report linked from the description of this ticket. I'll paste it here for easier reference:
b2 -d2 --layout=tagged --debug-configuration --user-config=user-config.jam -sBZIP2_INCLUDE=/opt/local/include -sBZIP2_LIBPATH=/opt/local/lib -sEXPAT_INCLUDE=/opt/local/include -sEXPAT_LIBPATH=/opt/local/lib -sZLIB_INCLUDE=/opt/local/include -sZLIB_LIBPATH=/opt/local/lib -sICU_PATH=/opt/local variant=release threading=single,multi link=static,shared -j4 architecture=x86 address-model=64 link=shared
I would not begin from the assumption that the problem is MacPorts-specific nor that it is OS X-specific, since, as I said, the problem did not exist with boost 1.58.0.
I have also tried with boost 1.60.0, and the issue remains. I have tried with --debug-building
and have attached the log here.
follow-up: 6 comment:5 by , 5 years ago
Does this have anything to do with the fact that the "name clash" file has "-mt" multi-threading included, when it's trying to build a single-threaded option? I'm trying to build the +no_single option and getting the same error. I believe it's supposed to not produce the *-mt files for +no_single but not entirely sure. What does "name clash" mean?
comment:6 by , 5 years ago
Correction, I meant "I'm trying to build the –no_single option" - as in it would Remove the option for No-Single processor, ie. Include the option for a Single Thread.
Replying to Demis.john@…:
Does this have anything to do with the fact that the "name clash" file has "-mt" multi-threading included, when it's trying to build a single-threaded option? I'm trying to build the +no_single option and getting the same error. I believe it's supposed to not produce the *-mt files for +no_single but not entirely sure. What does "name clash" mean?
As a user of MacPorts, I am dealing with this problem as well. Are you working on a fix?