Opened 4 years ago
Last modified 4 years ago
#62480 assigned defect
py-numpy: Compiler clang37 not available for Darwin20 arm
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | michaelld (Michael Dickens) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.6.4 |
Keywords: | arm64 | Cc: | cjones051073 (Chris Jones) |
Port: | py-numpy |
Description
Warning: Compiler gcc44 not available for Darwin20 arm Warning: Compiler gcc45 not available for Darwin20 arm Warning: Compiler gcc46 not available for Darwin20 arm Warning: Compiler gcc47 not available for Darwin20 arm Warning: Compiler gcc48 not available for Darwin20 arm Compiler clang37 not available for Darwin20 arm while executing "compilers.setup -clang -gcc44 -gcc45 -gcc46 -gcc47 -gcc48 -g95 clang37" invoked from within "if {${name} ne ${subport}} { set PATCH_PY_EXT "" if {${python.version} == 27} { github.setup numpy numpy 1.16.6 v check..." (file "Portfile" line 50) invoked from within "source Portfile" invoked from within "$workername eval {source Portfile}" (procedure "mportopen" line 50) invoked from within "mportopen $dep_portinfo(porturl) $dep_options $variations" (procedure "mportdepends" line 126) invoked from within "mportdepends $mport "activate"" invoked from within "if {[mportdepends $mport "activate"] != 0} { ui_error "mportdepends $portname activate failed." exit 1 }"
Change History (11)
comment:1 Changed 4 years ago by Schamschula (Marius Schamschula)
comment:2 Changed 4 years ago by ryandesign (Ryan Carsten Schmidt)
Owner: | changed from Schamschula to michaelld |
---|---|
Port: | py-numpy added; py-tifffile removed |
Summary: | py-tifffile: Compiler clang37 not available for Darwin20 arm → py-numpy: Compiler clang37 not available for Darwin20 arm |
Right, sorry.
comment:3 Changed 4 years ago by jmroot (Joshua Root)
It seems really inconvenient that each port needs to check which platform it's on and only ask for compilers that are supported on that platform. Couldn't that be handled by the portgroup?
comment:4 Changed 4 years ago by cjones051073 (Chris Jones)
The port group now issues a warning if a port asks to remove an already not available compiler, but still considers a port asking for one a hard error
Sure, this could be changed, but what should the PG do ? In this case the port is only asking for one, rather old, compiler, so I dont really see what can be done. I think in this case the port also needs to be updated a bit.
comment:5 Changed 4 years ago by cjones051073 (Chris Jones)
Cc: | cjones051073 added |
---|
comment:6 Changed 4 years ago by cjones051073 (Chris Jones)
Thinking about it, the only way I see to do this is to remove from ports like this the explicit requesting of a compiler variant, and instead only list those they don't want. Then the PG can figure out for itself what the remaining set of compilers are for a given platform.
comment:7 Changed 4 years ago by jmroot (Joshua Root)
Now py27-scipy is failing in a really strange and problematic way: https://build.macports.org/builders/ports-11_arm64-watcher/builds/3877/steps/subports/logs/stdio
It doesn't fail to mportopen, but then a variable that should always be set, isn't.
comment:8 Changed 4 years ago by cjones051073 (Chris Jones)
Its probably this
Warning: port "py27-scipy" failed to open: Compiler clang37 not available for Darwin20 arm
The port also explicitly adds the clang37 compiler to the list, so I guess it needs removing there as well.
comment:9 Changed 4 years ago by cjones051073 (Chris Jones)
comment:10 Changed 4 years ago by jmroot (Joshua Root)
Removing clang37 is all very well, but it's still a real problem that this code can break a port that badly.
comment:11 Changed 4 years ago by cjones051073 (Chris Jones)
I would argue all the change has done is expose an issue that was already there, namely declaring variants for compilers which could never have worked on a number of platforms. This issue isn’t jsut for arm, its also there for intel, just that we haven’t yet cleaned up the list there.
As i said, we could decide to make requesting to add a compiler variant a warning and not a hard error as it still is. That would be trivial to do, I am just not sure its the right thing to do.
There is nothing in py-tifffile that asks for a specific compiler.
However, I get the same error when trying to do
port info py39-numpy
.