\ mingw32 \ bin \ ld.exe:找不到-lC:/msys/1.0/opt/tcl/lib

时间:2011-03-10 18:46:02

标签: gcc mingw tcl tk mingw32

我正在尝试使用mingw和msys在Windows上编译Y86代码(http://csapp.cs.cmu.edu/public/sim.tar)的模拟器,模拟器使用Tcl和Tk进行GUI有,所以我首先尝试下载所需的包含和用于Tcl和Tk的库来构建,这不起作用,所以我下载了源代码并在msys(http://wiki.tcl.tk/14828)中构建它们。

我遇到的问题是我在运行make文件时遇到同样的错误,

  

chrismeyer @ MEYER-C / src / sim
  $ make
  (cd misc; make all)   make [1]:输入目录/src/sim/misc' make[1]: Nothing to be done for all'。   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>管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目录,它存在,我已多次检查过。

对这个问题的任何见解都会非常有用!

谢谢!

1 个答案:

答案 0 :(得分:6)

在sim.tar发行版中仔细查看Makefiles后,我会说你的变量设置不正确。

在Makefile中尝试以下设置:

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

根据您拥有的确切库,您可能需要添加一些版本号,例如-ltcl85左右,但不要先尝试。