読者です 読者をやめる 読者になる 読者になる

けつあご日記

こんちは.菊地です.なんか浅ーいことをいろいろ書きます

MinGWのgccでmakeしたらldとかいうやつがエラー!

MinGW Windows7

環境:64bit Windows7, MinGW on mintty

c++のコードをコンパイルしようとしてmake(VSとかじゃなくてコマンドラインからやってます)したらなんかエラー出ました.

**MinGWあたりのパス**/ld.exe: cannot find -lpthread collect2.exe: ld returned 1 exit status


たしかこんな感じのエラー.

なによgccもちゃんとはいってるわよ!!



とりあえずエラーコメントをそのままぐぐったところ,linuxの場合の対処法がヒットしました.
makeで「/usr/bin/ld: cannot find」と表示されるときは − @IT

なになに?ライブラリが足りてないとな.いままで普通に使えてたのに...コンパイル対象が少し特殊だったのかしら.


"-l"以下の部分,つまり"pthread"ってのが足りないライブラリになると.Windowsだとdllが足りてないってことになるんですかね.


「Windows pthread」で検索すると,インストールの方法が出てきましたね.
demura.net | Windows用Pthreadインストール用メモ


この手順通りにやったらできましたぁ.こちらではCodeblocks環境らしいので少しファイルを置くディレクトリが違いますね.


pthreadってのはなんか非同期処理のなんとか?らしいです.へ,へぇ.
pthreadについて(概要・生成) (1/4):CodeZine(コードジン)

とりあえずわたしは動けば満足なんですよ^^


Linuxコマンドライン入門 1日目 (ネット時代の、これから始めるプログラミング(NextPublishing))
Linuxコマンドライン入門 1日目 (ネット時代の、これから始めるプログラミング(NextPublishing))