#pragma comment(lib, "")的路径问题

common.cpp中有一条#pragma comment(lib,"common.lib"),其中common.cpp和common.lib处于同一个名为common的文件夹。
而工程文件在其他文件夹,编译的时候,编译器从工程文件的同级目录查找common.lib,结果当然是找不到了。
首先,由于这个common文件夹中的文件是所有人共享的,并不是每一个人的common绝对路径都相同,所以不能使用绝对路径链接lib。
另外,由于多个项目使用这个common文件夹,但是它们的位置也各不相同,所以也不能使用相对于工程目录的相对路径。
但是至少common.cpp和common.lib是处于同一个目录的,那么有办法让它自动找到吗?

 

找到最佳解决方法了:
common.lib还是common.lib不变,不用改名,然后
#define   LIBPATH(p,f)   p##f 
#pragma   comment(lib,LIBPATH(__FILE__,   "..\\srilm-lib\\common.lib")) 
直接搞定,就算common.cpp.dir这个文件夹不存在也没有关系。
编译环境Vs2003。

posted @ 2013-04-15 17:30  springbarley  阅读(10326)  评论(0编辑  收藏  举报