Opened 3 weeks ago

Closed 11 days ago

#70799 closed defect (fixed)

R: all compilers blacklisted on macOS 15

Reported by: i0ntempest Owned by:
Priority: Normal Milestone:
Component: ports Version:
Keywords: sequoia Cc: barracuda156, kjellpk (Kjell Konis), cjones051073 (Chris Jones), punkish (punkish), Knapoc, hapaguy (Brian Kurt Fujikawa)
Port: R

Description

Building R on macOS 15 now gives: All compilers are either blacklisted or unavailable, and then fails. Time to switch to new clang and gcc?

Attachments (2)

main.log (286.4 KB) - added by i0ntempest 3 weeks ago.
config.log (171.7 KB) - added by i0ntempest 3 weeks ago.

Download all attachments as: .zip

Change History (19)

Changed 3 weeks ago by i0ntempest

Attachment: main.log added

Changed 3 weeks ago by i0ntempest

Attachment: config.log added

comment:1 Changed 3 weeks ago by cjones051073 (Chris Jones)

Correct, currently only gcc14 and clang 18 or 19 work on macOS 15. This *may* improve in the future, but also quite possibly will remain a restriction. So now would indeed be a good time to bump the versions R forces.

comment:2 Changed 3 weeks ago by cjones051073 (Chris Jones)

Cc: cjones051073 added

comment:3 Changed 3 weeks ago by markemer (Mark Anderson)

Has 67144 been fixed by R upstream? Seems like 17+ was causing problems. But yeah both gcc13 and clang < 18 are broken on macOS 15 now, so that's not great.

comment:4 Changed 3 weeks ago by barracuda156

Release of a broken OS was not something we were prepared for :)

Changing compilers for R will be a pain. That’s a lot of stuff to rebuild. I have no idea whether clang-18 gonna work. gcc14 is probably safe.

UPD. Well, “is safe” may be an overstatement, since both gcc14 and clang18+ changed many warnings to errors, so that is likely to break an unknown number of ports. However since all systems on buildbots use clang for C/C++, only myself gonna see breakages with gcc14. gfortran14 should be safe – I can’t remember anything being broken by it.

Last edited 3 weeks ago by barracuda156 (previous) (diff)

comment:5 Changed 3 weeks ago by i0ntempest

I thought compiler path is no longer baked in and we no longer follow the upstream guideline that says R base and packages should be built using the same compiler?

If this is the case how much stuff do we need to rebuild?

comment:6 in reply to:  5 Changed 3 weeks ago by barracuda156

Replying to i0ntempest:

I thought compiler path is no longer baked in and we no longer follow the upstream guideline that says R base and packages should be built using the same compiler?

As of now it is, AFAIK. Unless someone changed that without me noticing.

If this is the case how much stuff do we need to rebuild?

I recall rebuilding was pretty unpopular last time and I rather avoid another week-long discussion, so let others decide. I can always fix this for myself at least.

  1. S. As a matter of fact, a number of ports have been broken earlier by skipping revbump when it was due. So I had to add these hacks whenever CI shown an error: [622eca8499b7d482142030eb8d61c0ff01a011c8/macports-ports]

Those are not numerous, given total number of R ports, but there may be more.

Last edited 3 weeks ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:7 in reply to:  4 Changed 3 weeks ago by cjones051073 (Chris Jones)

Replying to barracuda156:

Release of a broken OS was not something we were prepared for :)

Changing compilers for R will be a pain. That’s a lot of stuff to rebuild. I have no idea whether clang-18 gonna work. gcc14 is probably safe.

UPD. Well, “is safe” may be an overstatement, since both gcc14 and clang18+ changed many warnings to errors, so that is likely to break an unknown number of ports. However since all systems on buildbots use clang for C/C++, only myself gonna see breakages with gcc14. gfortran14 should be safe – I can’t remember anything being broken by it.

The OS is not (completely) broken, just has dropped for now support for old compilers. This is natural progression and something you should be prepared for.

comment:8 Changed 3 weeks ago by cjones051073 (Chris Jones)

b.t.w. you don' have to, for now, change the compilers used on macOS14 or older. In the longer term it would be a good idea, but you could just bump the version for macOS15+ to versions now supported there, but on macOS14 or older keep things as they are. Given nothing builds on macOS15 at present you would not even need to rev bump anything.

Last edited 3 weeks ago by cjones051073 (Chris Jones) (previous) (diff)

comment:9 Changed 3 weeks ago by reneeotten (Renee Otten)

Cc: punkish added

comment:10 Changed 3 weeks ago by Knapoc

Cc: Knapoc added

comment:11 in reply to:  8 Changed 3 weeks ago by markemer (Mark Anderson)

Replying to cjones051073:

b.t.w. you don' have to, for now, change the compilers used on macOS14 or older. In the longer term it would be a good idea, but you could just bump the version for macOS15+ to versions now supported there, but on macOS14 or older keep things as they are. Given nothing builds on macOS15 at present you would not even need to rev bump anything.

Yep - that might be the best move - that way we can see how well it works and build with the new stuff later on everything. We can't break macOS 15 R builds more than they already are.

comment:12 Changed 2 weeks ago by cjones051073 (Chris Jones)

As it can hardly make things worse for R users on macOS15+

https://github.com/macports/macports-ports/commit/4112440c528a827019b8a1b38adabd0d21aded3e

Not an R user myself, but seems fine at building R and a few test R-XYZ ports.

comment:13 Changed 2 weeks ago by hapaguy (Brian Kurt Fujikawa)

Cc: hapaguy added

comment:14 Changed 2 weeks ago by markemer (Mark Anderson)

Clang 17 and 16 are working now (and 14 and 15 are on the way!) so we might want to revert 411244 and close the ticket.

Version 1, edited 2 weeks ago by markemer (Mark Anderson) (previous) (next) (diff)

comment:15 in reply to:  14 Changed 2 weeks ago by markemer (Mark Anderson)

Replying to markemer:

Clang 17 and 16 are working now (and 14 and 15 are on the way!) so we might want to revert 411244 and close the ticket. Although we should probably open a new one to bring R to at least clang 17 if not 18/19 when possible.

After talking to barracuda156, gcc13 is needed for gfortran, so we're still kinda stuck on macOS 15.

comment:16 Changed 2 weeks ago by cjones051073 (Chris Jones)

Now macOs15+ are on clang-18 and gcc-14 I would not roll them back.

comment:17 Changed 11 days ago by cjones051073 (Chris Jones)

Resolution: fixed
Status: newclosed
Note: See TracTickets for help on using tickets.