2

Windows で mingw と msys を使用して Y86 コード (http://csapp.cs.cmu.edu/public/sim.tar) のシミュレーターをコンパイルしようとしています。シミュレーターは GUI に Tcl と Tk を使用するため、最初に、Tcl と Tk をビルドするために必要なインクルードとライブラリをダウンロードしようとしましたが、うまくいかなかったので、ソースをダウンロードして msys でビルドしました (http://wiki.tcl.tk/14828)。

私が抱えている問題は、メイクファイルを実行しているときに同じエラーが発生し続けることです.

chrismeyer@MEYER-C /src/sim
$ make
(cd misc; make all) make[1]: ディレクトリ/src/sim/misc' make[1]: Nothing to be done forall に入ります。make[1]: ディレクトリ/src/sim/misc' (cd pipe; make all GUIMODE=-DHAS_GUI TKLIBS="-l /opt/tcl/lib" TKINC="-I /opt/tcl/include") make[1]: Entering directory/src/sim/pipe を離れています PIPE の pipe-std.hcl バージョンをビルドしています ../misc/hcl2c -n pipe-std.hcl < pipe-std.hcl > pipe-std.c gcc -Wall -O2 -I /opt/tcl/include -I../misc -DHAS_GUI -o psim psim.c pipe-std.c \ ../misc/isa.c -l /opt/tcl/lib -lm c:\minGW\bin..\lib\gcc\mingw32\3.4.5........\mingw32\bin\ld.exe: -lC:/msys/1.0/opt/tcl/lib が見つかりませんcollect2: ld が 1 の終了ステータスを返しました make[1]: * [psim] エラー 1 make[1]: ディレクトリ `/src/sim/pipe' を離れています

エラーのフォーマットについて申し訳ありません。少しめちゃくちゃになってしまいました。主な問題はこの行です

C:\minGW\bin\..\lib\gcc\mingw32\3.4.5\..\..\..\..\mingw32\bin\ld.exe: cannot find -lC:/msys/1.0/opt/tcl/lib

gcc が lib ディレクトリを見つけられない理由がわかりません。存在します。何度も確認しました。

この問題に関する洞察は非常に役立ちます。

ありがとう!

4

1 に答える 1

6

sim.tarディストリビューションのMakefileをざっと見てみると、変数が正しく設定されていないと思います。

Makefileで次の設定を試してください。

TKLIB="-L/opt/tcl/lib -ltk -ltcl"
TKINC="-I/opt/tcl/include"

使用している正確なライブラリによっては、-ltcl85などのバージョン番号を追加する必要がある場合がありますが、最初は追加しないでください。

于 2011-03-10T20:08:58.263 に答える