最近看书,把书上附带的一个程序xgaussj.c(gauss消元的),以及所必须的两个头文件nrutil.h,nr.h
拷到一个目录下,创建project,编译,结果出现如下编译错误:
Linking...
xgaussj.obj : error LNK2001: unresolved external symbol _free_matrix
xgaussj.obj : error LNK2001: unresolved external symbol _gaussj
xgaussj.obj : error LNK2001: unresolved external symbol _nrerror
xgaussj.obj : error LNK2001: unresolved external symbol _matrix
Debug/xgaussj.exe : fatal error LNK1120: 4 unresolved externals
Error executing link.exe.
xgaussj.exe - 5 error(s), 0 warning(s)
不知道什么问题,看样子可能是不是c的在c++下面的一些编译问题,不知道如何解决,请高手们指教,谢谢.
应该是需要相关的lib库加入到工程吧
书上应该有编译的过程,仔细找找,应该是没有把相关文件引入工程造成的!
可能是没有Lib,或者是没有实现的C/C++文件.
加入对应的lib库文件进入工程
nrutil.h,nr.h
明显程序中用到以上两个头文件的里定义的东西,但你没有对应的CPP文件,也没有编译好的lib文件,所以链接时会出错了。
解决方案一:
找到对应的实现CPP文件,添加到工程中去
解决方案二:
找到对应的实现的Lib文件,复制到标准链接库路径下