Crystal Langの開発をOSX El-Capitanを実行している新しいマシンに移行しています。Crystal Lang:OSX El CapitanのMySQLライブラリでアプリケーションをコンパイルできません
私は、MySQLバインディングでアプリケーションをコンパイルする問題が発生した、結晶コンパイラは、このエラーがスローされます。
$ crystal build src/test1.cr
ld: library not found for -lmysqlclient
打ち鳴らす:エラー:リンカコマンドは、呼び出しを確認するために、終了コード1(使用-vで失敗しました)
OSXの以前のバージョンではError: execution of command failed with code: 1: `cc -o "/Users/james/cprojects/test1/test1" "${@}" -rdynamic -lmysqlclient -lpcre -lgc -lpthread /usr/local/Cellar/crystal-lang/0.18.7_1/src/ext/libcrystal.a -levent -liconv -ldl -L/usr/lib -L/usr/local/lib`
、私が行うために必要なすべてがそうシンボリックリンクにし、それはトリックを行います。
ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
を3210
残念ながら、エルキャピタンが、これはこれが/ usr/local/mysql/libに/(今私が使用していますV20は、18のinsted注)
libmysqlclient.20.dylib libmysqld-debug.a mecab
libmysqlclient.a libmysqld.a pkgconfig
libmysqlclient.dylib libmysqlservices.a plugin
の内容です
ln: /usr/lib/libmysqlclient.18.dylib: Operation not permitted
ことは不可能です
私はXCodeに固有のinstall_name_toolを使用することについていくつかのアイデアを見てきました。
誰かがエルキャピタンに移住して、光を放つことができますか?これを行うにはどうすればよいでしょうか?
もう1つの方法は、 'LIBRARY_PATH'環境変数を設定することです。 Crystalの場合、 '-L'フラグは' --link-flags'オプションを介して 'crystal build'に渡すことができます。自家製のものや、MySQLをインストールしたものが、ここで修正することができないのだろうか? –