在公司实习,项目中的c/cpp部分要在linux下做.
由于刚转到linux下不久不太熟悉,走了不少弯路.
项目中要用到libxml2库,直接在终端下编译运行成功
$g++ testAttr.c -o getRefTest -I /usr/include/libxml2/ -L /usr/lib -lxml2
但是换到eclipse和netbeans下就悲剧了,弄里一两天没解决,网上基本没相关解答
google了久之后找到了netbeans的解决方法:
(以下转载:)
因为这个并不是Linux下的标准,所以你要在链接的时候加上-lpthread,(这里是-lxml2)
添加方式如下:
properties->Linker->Libraries->Add Standard Library->Posix Threads (or
Add Option->Other Option-> -lpthread
=========================================================
然后eclipse的问题也随之解决了:
在项目的属性->c/c++ build->settings->gcc c Linker里面的Libraries(-l)加入xml2就行了(xml2是libxml2的库文件)
想了一下,问题主要出在对gcc编译器参数不熟悉.
关于gcc参数请看我的下一篇转载文章......