作者OgamiIchiro (大神一郎)
看板C_and_CPP
标题[问题] Linking .lib in DEV-C IDE and using external function.
时间Mon May 25 22:56:46 2009
由於需要在C code内使用external function
所以得link一个library file---libhmetis.lib (有linux版本的libhmetis.a)
下面一行是我在compiler option加入的指令
-L C:\debug_using -l libhmetis
到此为止都还没有发生report error or warning
但就在我要使用library内的function时
出现了许多的message:
variable '_iob' can't be auto-imported. Please read the documentation for
ld's --enable-auto-import for details.
.drectve `-defaultlib:LIBC ' unrecognized
.drectve `-defaultlib:OLDNAMES ' unrecognized
resolving __iob by linking to __imp___iob (auto-import)
[Linker error] undefined reference to `_nm___iob'
以上这五种内 前三种出现数十次
想请问该如何修改才能正确连结并且使用library所提供的function呢?
已解决 改为link .a file
Linker option 要加上:
-L C:\debug_using -l hmetis
gcc会自动加上library的档名前面的lib
但是
现在问题变成要如何呼叫library里面的function...
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 123.195.63.169
1F:推 littleshan:你该不会是拿 VC 的 library 想给 GCC 用吧? 05/26 00:06
2F:→ OgamiIchiro:看起来似乎是这麽回事 但我不知道怎麽link .a file.. 05/26 00:20
※ 编辑: OgamiIchiro 来自: 123.195.63.169 (05/26 02:34)
※ 编辑: OgamiIchiro 来自: 123.195.63.169 (05/26 03:44)
3F:→ weiyucsie:不是直接呼叫就好了? 05/26 09:52
4F:→ OgamiIchiro:我有试过不宣告prototype直接呼叫 依然是同样的error 05/26 19:48
5F:→ OgamiIchiro:不确定是不是因为没有在工作站上面用造成的 05/26 19:49