macOS の Homebrew で GCC Emacs のビルドがうまく行かない
16dfe04be2c57fc82ccdd56cad97b39d559a5afe で解決しました (将来、再発するかもしれませんが…)
- (emacs-28) Find libgccjit on macOS with Homebrew differently · emacs-mirror/emacs@16dfe04
- (master) Merge from origin/emacs-28 · emacs-mirror/emacs@d0bb333
NativeComp が有効になった Emacs 28 ですが、macOS+Homebrew の環境では、うまくビルドできない場合があります。根本的な原因は Homebrew でインストールする libgccjit の状態に依存していて、現時点(2022-08-15)でも問題が再発しています。libgccjit のバージョンが12で、master branch と emacs-28 branch の双方で発生します。当面の解決策は、下記に示すパッチを configure.ac
にあてて autogen.sh
を呼べば、正しくビルドできる configure
が生成されます。
diff --git a/configure.ac b/configure.ac
index 57b86e8542..12bb3d8cb2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3844,7 +3844,7 @@ AC_DEFUN
MAC_CFLAGS="-I$(dirname $($BREW ls -v libgccjit | \
grep libgccjit.h))"
MAC_LIBS="-L$(dirname $($BREW ls -v libgccjit| \
- grep -E 'libgccjit\.(so|dylib)$'))"
+ grep -m 1 -E 'libgccjit\.(so|dylib)$'))"
fi
fi
brew ls -v libgccjit | grep libgccjit.dylib の戻り値が複数ある場合が想定されてないのね。
— たかさん (@takaxp) August 5, 2022