establish installed dependency not in portfile
Ryan Schmidt
ryandesign at macports.org
Sat Oct 7 23:17:42 UTC 2017
On Oct 7, 2017, at 14:13, db wrote:
> It seems that gcc7 comes from portgroup compilers. From the logs I kept when upgrading, gcc7 seems to never have been built for building py-numpy before.
py-numpy requires a Fortran compiler. Xcode doesn't contain one, so we must use one provided by MacPorts. You can choose which compiler to use by using variants:
$ port variants py27-numpy
---> Updating the ports tree
py27-numpy has the variants:
atlas: Use MacPorts ATLAS Libraries
* conflicts with openblas
clang37: Build using the MacPorts clang 3.7 compiler
* conflicts with gcc49 gcc5 gcc6 gcc7 llvm
gcc49: Build using the MacPorts gcc 4.9 compiler
* conflicts with clang37 gcc5 gcc6 gcc7 gfortran llvm
gcc5: Build using the MacPorts gcc 5 compiler
* conflicts with clang37 gcc49 gcc6 gcc7 gfortran llvm
gcc6: Build using the MacPorts gcc 6 compiler
* conflicts with clang37 gcc49 gcc5 gcc7 gfortran llvm
gcc7: Build using the MacPorts gcc 7 compiler
* conflicts with clang37 gcc49 gcc5 gcc6 gfortran llvm
[+]gfortran: Build using the MacPorts gcc 7 Fortran compiler
* conflicts with gcc49 gcc5 gcc6 gcc7
llvm: Build using the Apple native llvm-gcc 4.2 compiler
* conflicts with clang37 gcc49 gcc5 gcc6 gcc7
openblas: Use MacPorts OpenBLAS Libraries
* conflicts with atlas
universal: Build for multiple architectures
I assume the gcc* variants use the Fortran, C and C++ compilers from those ports, while the gfortran variant only uses the Fortran computer from a gcc port while still using the C and C++ compilers from Xcode (i.e. clang).
For modern systems, the default gcc port that the compilers portgroup uses used to be gcc6, and was changed to gcc7 a few days ago:
https://github.com/macports/macports-ports/commit/c347ac662f932c0db8b15ec982eb4a563174bcfc
More information about the macports-users
mailing list