Opened 9 years ago
Closed 9 years ago
#49613 closed defect (fixed)
root6: GSL uses the wrong complier
Reported by: | watsodw | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | cjones051073 (Chris Jones), mojca (Mojca Miklavec) | |
Port: | root6 |
Description (last modified by mojca (Mojca Miklavec))
See log:
:info:build configure: error: in `/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_science_root6/root6/work/build/GSL-prefix/src/GSL-build': :info:build configure: error: C compiler cannot create executables
Attachments (2)
Change History (14)
Changed 9 years ago by watsodw
comment:1 Changed 9 years ago by cjones051073 (Chris Jones)
comment:3 Changed 9 years ago by cjones051073 (Chris Jones)
Thanks. Submitted a bug report with upstream.
comment:4 Changed 9 years ago by mojca (Mojca Miklavec)
Description: | modified (diff) |
---|---|
Summary: | root6 upgrade fails → root6: GSL uses the wrong complier |
Version: | 2.3.4 |
I slightly forgot about this ticket, but based on the upstream ticket resolution it looks as if both problems should be solved now (after upgrading ROOT to 6.06 as per #50011 / r143637): the built-in GSL should use the proper compiler and the external GSL should work again.
We could probably switch back to the external GSL.
comment:5 Changed 9 years ago by cjones051073 (Chris Jones)
I don't think the fix to allow ROOT to use an external GSL 2.x made it into 6.06.00, but I could be wrong.
I'll review things for the next 6.06.01 update, to see if we can then revert back to using the external GSL. Using the internal one is not really a major issue, but it would be better to change back eventually.
comment:6 Changed 9 years ago by mojca (Mojca Miklavec)
Ah, no, it didn't. This ticket:
says the patch has only been applied to 5.34/36, 6.08/00, 6.06/02
But from what I understand we now have three different issues:
- incompatibility with external GSL version 2 (#7776, included in 6.06.00)
- wrong compiler used for the internal GSL (#7782, 1abe7a96d, scheduled for 6.06.02)
mathmore
should not be used when GSL is disabled (see also r142498)
The first two should eventually be fixed (they were fixed upstream), but we still need to change the third one. Or am I wrong?
comment:7 follow-up: 8 Changed 9 years ago by cjones051073 (Chris Jones)
I am missing something. The third case is fixed as per r142498 no ?
comment:8 Changed 9 years ago by cjones051073 (Chris Jones)
Replying to jonesc@…:
I am missing something. The third case is fixed as per r142498 no ?
Or do you mean do the same with ROOT6... Yes, you are correct this is not done in the Port file right now and should be added (I doubt anyone has ever tried disabling it until now..). Note though the reason to disable GSL should really be gone in 6.06.00.
Changed 9 years ago by cjones051073 (Chris Jones)
Attachment: | root.mathmore.diff added |
---|
comment:9 Changed 9 years ago by cjones051073 (Chris Jones)
Attached is a trivial patch to the ROOT6 port to make sure MathMore is turned off when the GSL variant is not enabled.
comment:10 Changed 9 years ago by mojca (Mojca Miklavec)
Thanks, committed in r143641.
The only other things that remain to do are then the following:
- either wait for 6.06.02 or apply the upstream patch
- switch back to external GSL
comment:11 Changed 9 years ago by cjones051073 (Chris Jones)
As ROOT6 is working fine with the builtin GSL, I am inclined to just leave things as they are for now, and revert back to using an external GSL once 6.06.02 is out.
comment:12 Changed 9 years ago by mojca (Mojca Miklavec)
Resolution: | → fixed |
---|---|
Status: | new → closed |
We'll wait for the switch to external GSL until version 6.06.02 gets released, but we believe that the problems mentioned here should have disappeared after the latest upgrade. In case that you are still experiencing problems, please reopen the ticket or open a new one.
Do you have one of the MacPorts gcc ports 'port selected' to make it your default 'gcc' ? If so this appears to be the problem, as it appears the internal build of GSL, which I switched to for this version due to the fact ROOT does not yet support GSL 2.0 which MacPorts now uses, and during configure the internal GSL is discovering your gcc version and this is causing problems.
The work around is please un-select MacPorts gcc version, upgrade ROOT, then select it again. I was able to reproduce your failure by port selecting myself, and un-selecting it fixes things.
This is a bug in ROOT's build system, as it should configure its internal GSL version to build using the same compiler settings as ROOT itself. Please file this as a bug against ROOT upstream, as it is not a bug in the MacPorts port. I am hoping the next release will contain support for GSL 2.0, in which case I can revert back to using MacPorts version.
Chris