静态库(lib)的连接出错,火急! 本帖最后由 sd_wf2005 于 2010-06-29 17:05:18 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 找不到函数的实现?你看看你的dll中setErrorStrings函数时候有实现 把lib加进来,你只加了头文件,没加实现的文件,#pragam comment(lib,"****.lib")或者在link里面加进去 #pragma comment(lib,"****.lib")写错了,不好意思 #pragma comment(lib,"****.lib")写错了,不好意思 我在工程的设置里面加了啊,Link->Input->Additional Dependencies lib路径对不对啊?把它放到编译中间文件输出目录看看(就是那些.obj文件的目录). 这个lib生成的时候就和那些obj在一个目录下,我刚刚在工程里面直接把目录指到这儿怎么还不行啊,不过好像是lib没有连进来,是从这个地方设的路径Link->general->Additional Library Directories 1,你首先要确定你的lib文件有这个函数的实现;2,检查链接的路径问题,可以先将绝对地址写上去,如果成功,再考虑用相对地址。 如果setErrorStrings函数存在的话,直接把*.lib文件添加到工程,然后再重新编译一遍应该可以. 找不到函数的实现?你看看你的dll中setErrorStrings函数时候有实现 这个函数实现是有的,我原来是写在一个工程里面的,可以正常运行,后来我把一部分做成了lib,所以就在连接着lib的时候出现了问题,谢谢各位,我再试试 补充一点:我这个是lib,是一个c++的类,给外部提供了一个方法,连接这个方法的时候出错的。有人说用#ifdef __cplusplusextern "C" {#endif但是在类里面,把这个当做非法字符,本人水平菜,多指教 编译lib. 生成的lib和头文件拷贝包你要使用的工程下.包含头文件到工程,并设置依赖的lib.应该就行了.ps: 编译器里出现 非法字符 ,可以双击,让他定位行 .然后删除空格.最后自己敲空格.就可以去掉了. 因为你是在网页上copy的代码.把他的特殊字符也copy了.虽然他是不可见的(在网页上不显示) combobox控件如何获取当前选定的项,并获取相应的值 请教熟悉FIREFOX XPCOM插件开发的人 弹出式菜单 我如何重复使用同一个excel进程?? 求助,编译报错,很棘手 函数或变量前定义为virtual是什么意思? 关于函数返回值是指针的问题. 请问LPCITEMIDLIST类型的数据如何能做到序列化? 哪里有C++ primer,或者是STL的电子书(中文版)? 《2009年电脑编程技巧与维护合订本》免费获取 那里有和VC中一样的properties(属性列表)控件? 如何在桌面和当前界面弹出一个BOX啊,谢谢!!!!!
你看看你的dll中setErrorStrings函数时候有实现
#pragam comment(lib,"****.lib")
或者在link里面加进去
写错了,不好意思
写错了,不好意思
我在工程的设置里面加了啊,Link->Input->Additional Dependencies
lib路径对不对啊?把它放到编译中间文件输出目录看看(就是那些.obj文件的目录).
这个lib生成的时候就和那些obj在一个目录下,我刚刚在工程里面直接把目录指到这儿怎么还不行啊,不过好像是lib没有连进来,是从这个地方设的路径Link->general->Additional Library Directories
2,检查链接的路径问题,可以先将绝对地址写上去,如果成功,再考虑用相对地址。
你看看你的dll中setErrorStrings函数时候有实现
这个函数实现是有的,我原来是写在一个工程里面的,可以正常运行,后来我把一部分做成了lib,所以就在连接着lib的时候出现了问题,谢谢各位,我再试试
#ifdef __cplusplus
extern "C" {
#endif
但是在类里面,把这个当做非法字符,本人水平菜,多指教
ps: 编译器里出现 非法字符 ,可以双击,让他定位行 .然后删除空格.最后自己敲空格.就可以去掉了. 因为你是在网页上copy的代码.把他的特殊字符也copy了.虽然他是不可见的(在网页上不显示)