MinGWでmakeがらみのライブラリパスやヘッダのインクルードパスを確認する

 

wrench-in-hands_sizeXS.jpg

フリーコンパイラ「gcc」を Windows 環境で利用できる「MinGW」で、とあるプログラムをmakeコンパイルしようとした時に遭遇したエラーと対処をまとめておきます。

autoreconf 時に「autoreconf error: possibly undefine macro: AC_DEFINE」エラーが発生。

$ aclocal --print-ac-dir

で表示されるパスに pkg-config の pkg.m4 があるかを確認。ない場合は pkg.m4 をそのパスに入れて解決。

 

./configure 時に「Could not find pthread library - please install libpthread」エラーが発生。

$ ld --verbose|grep SEARCH_DIR

で表示されるライブラリの検索パスを確認。必要なら↓export でライブラリパスを追加

$ export LIBRARY_PATH=$(LIBRARY_PATH):"/c/MinGW/lib"

 

make 時、特定のヘッダファイルが include できずにエラーになる。

汚してもよい適当な場所で以下を実行し、gcc の include パス検索順を確認する。

$ touch foo.c bar.cpp
 
$ gcc -v -c foo.c
#include <…> search starts here
$ g++ -v -c bar.cpp
#include <…> search starts here

参考情報:

Hatena Pocket Line

コメントを記入