对lindo.h中声明的函数的未定义引用

时间:2013-04-17 05:23:37

标签: eclipse undefined-function

我有同样的问题:

undefined reference to function declared in *.h file

我正在编写一个使用Eclipse的C / C ++项目。

我如何解决同样的问题?

我试过去: 项目 - >属性 - > c c ++ build - >设置 - > 工具设置 - > Gcc c ++库 - >库 - >库(-l)

并在/ lindoappi / bin / linux34中添加库。

但它不起作用。我将目录添加到:

项目 - >属性 - > c c ++ build - >设置 - > 工具设置 - > Gcc c ++库 - >库 - >图书馆搜索路径

控制台输出是:

  

****构建配置项目调试LINDO_test ****

     

全力以赴   构建目标:LINDO_test   调用:GCC C ++链接器   g ++ -L / home / mario / lindoapi / bin / linux32 -o“LINDO_test”./ src / LINDO_test.o ./src/test_001.o -lliblindo   / usr / bin / ld:找不到-lliblindo   collect2:ld返回1退出状态   make:*** [LINDO_test]错误1

以下是相关帖子: error while loading shared libraries

还有其他建议吗? 非常感谢。

1 个答案:

答案 0 :(得分:0)

转到:

项目 - >属性 - > c c ++ build - >设置 - >工具设置 - > Gcc c ++链接器 - >库 - >库(-l)

将库添加为: lindo64 mosek64 无论你需要什么。

然后添加: 项目 - >属性 - > c c ++ build - >设置 - >工具设置 - > Gcc c ++链接器

确保... / lindoapi / bin / linux64 在... 项目 - >属性 - > c c ++ build - >设置 - >工具设置 - > Gcc c ++链接器 - >库 - >库搜索路径(-L)

将命令行模式编辑为: $ {COMMAND} $ {OUTPUT} ... -Wl,-rpath = / opt / lindoapi / bin / linux64 $ {INPUTS}

由于某种原因Eclipse只允许 -soname, - out-implib和--output-def 对于Wl,所以你必须以这种方式手动完成。 不干净,但它有效。

我希望这对其他用户也很有用。

快乐的编码。