17 MacPorts で GCC (gcc, g++, gfortran) のインストール

考えてみれば、ここに書いたことはなかった?

MacPorts でインストールできる GCC にどんなバージョンがあるかは
port search gcc | grep '^gcc'
とすれば分かる。


以下は実はあまり自信がない。

例えば Version 6 (2019/6/27現在 6.5.0.14) をインストールして、 gcc, g++, gfortran コマンドが使えるようにするには
sudo port install gcc6
sudo port select --set gcc mp-gcc6
とする。

gccgcc-mp-6, g++g++-mp-6, gfortrangfortran-mp-6 へのリンクとなる。


sudo port install openmpi-gcc6
sudo port select --set mpi openmpi-gcc6-fortran
mpiccmpicc-openmpi-gcc6, mpicxxmpicxx-openmpi-gcc6, mpif77mpif77-openmpi-gcc6, mpif90mpif90-openmpi-gcc6 へのリンクとなる。


(2019/11/26) gccのバージョンは何が適切なのか? Homebrew では、gcc9 がデフォールトみたい。MacPorts ではどうなのか?
$ port variants openblas
OpenBLAS has the variants:
...
[+]gcc9: Build using the MacPorts gcc 9 compiler
     * conflicts with g95 g95 gcc48 gcc49 gcc5 gcc6 gcc7 gcc8
総本山 GCC, the GNU Compiler Collection の Supported Releases には、 GCC 9.2, GCC 8.3、それと Development GCC 10.0 しか載っていない。 世の中知らぬ間に gcc9 が標準なのかなぁ?

昨年の今頃は、事情があって、gcc4.9 と格闘していたのだった…

前進することに決めた。

sudo port install gcc9
sudo port select --set gcc mp-gcc9
あれ?
$ gcc 何とか.c
ld: unexpected token: !tapi-tbd-v3 file '/Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/lib/libSystem.tbd' for architecture x86_64
collect2: error: ld returned 1 exit status
https://trac.macports.org/ticket/58333#comment:8 に従う。
sudo port -v uninstall ld64
sudo port -v install ld64 +ld64_xcode
これでエラーは出なくなった。

桂田 祐史
2020-04-20