使用目标文件在c ++中链接东西

时间:2013-05-16 02:17:50

标签: c++ leda

问题已解决:::

我在c ++中使用LEDA库。

command used to make object file.

g++ -I$LEDAROOT/incl -c mult.cpp

this command runs fine

我在连接步骤时变得越来越热。

这里是EROOR

varun@Kinley:~/Documents/LEDA/test/numbers$ g++  -L$LEDAROOT mult.o -lleda -lX11 -lm
/usr/bin/ld: cannot find -lX11
collect2: error: ld returned 1 exit status

我想我需要安装一些软件包,因为当我搜索这个错误时,大多数问题都是通过安装一些软件包来解决的。

我没有找到lx11错误

我用Google搜索的一些eroor消息。

  

错误1

     

/ usr / bin / ld:找不到-lfreetype collect2:ld返回1退出   状态

     

错误2

     

/ usr / bin / ld:找不到-lz collect2:ld返回1退出状态

我找到这些帖子的链接

http://www.qtcentre.org/threads/21069-collect2-ld-returned-1-exit-status

http://www.cyberciti.biz/faq/centos-rhel-redhat-usrbinld-cannot-findlc-error/

我是否需要安装某个软件包或存在其他问题

1 个答案:

答案 0 :(得分:0)

可能是两件事

1)X11库安装在非标准路径中。使用search命令查看系统上是否有libX11.a或libX11.so。如果是,请将目录路径添加到-L选项。

2)您缺少libX11库。 在这种情况下,以admin身份登录并使用yum(假设是linux)来安装此库。 例如:

“yum install libX11.i386”或“yum install libX11.x86_64”,具体取决于您的体系结构(32位或64位)。