error LNK2019:unresolved external symbol *** referenced in function ***的解决方案
2010-01-19 17:54
579 查看
当头文件中声明了一个函数,但是在相应的源文件中却没有对该函数进行定义,则会出现为“解决的外部符号”(unresolved
external symbol
)错误。另外,当一个函数调用了外部的一个库文件中的函数,但是在当前project的properties中并没有将所依赖的(dependent)库
文件包含进来时,也会出现这种错误。
综上,当一个solution在linking时找不到所涉及到的函数的定义时就会出现“unresolved external symbol ”错误。
例如,下面是调用MIL的库文件mil.lib中的函数时,由于没有将mil.lib包含进来而导致的链接错误。
1>Linking...
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MappFree@4
referenced in function _main
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MsysFree@4
referenced in function _main
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MdispFree@4
referenced in function _main
【解决方案】
1. Project -> ** Properties... -> Configuration
Properties -> Linker -> Input -> Additional Dependencies ->
mil.lib
另外,在此之前,还需添加MIL库的相应目录:Tools -> Options -> Projects and
Solutions -> VC++ Directories -> Show Directories for ->
在Include files中添加C:/Program Files/Matrox Imaging/Mil/Include 以及 Tools
-> Options -> Projects and Solutions -> VC++ Directories ->
Show Directories for -> 在Library files中添加C:/Program Files/Matrox
Imaging/Mil/LIB。添加目录的目的是为了使VC在调用相应库文件时不必总是使用绝对地址,VC可以通过文件名在所包含的目录中进行搜索。这
样,前面的mil.lib就不必使用绝对地址了。
【缺点】可移植性差,如果将原工程中的源文件和头文件中的内容copy下来重新建立该工程时(例如:在电子书或网络上找到的程序),仍需自己在工程中添加目录及所需的库文件。
2. 在程序前加入#pragma commet(lib, "mil.lib")也可以达到相同的效果。
【优点】避免了方案1所出现的问题。
转自: http://www.cnblogs.com/tekson/archive/2009/06/17/1505196.html
external symbol
)错误。另外,当一个函数调用了外部的一个库文件中的函数,但是在当前project的properties中并没有将所依赖的(dependent)库
文件包含进来时,也会出现这种错误。
综上,当一个solution在linking时找不到所涉及到的函数的定义时就会出现“unresolved external symbol ”错误。
例如,下面是调用MIL的库文件mil.lib中的函数时,由于没有将mil.lib包含进来而导致的链接错误。
1>Linking...
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MappFree@4
referenced in function _main
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MsysFree@4
referenced in function _main
1>MDispSelect.obj : error LNK2019: unresolved external symbol _MdispFree@4
referenced in function _main
【解决方案】
1. Project -> ** Properties... -> Configuration
Properties -> Linker -> Input -> Additional Dependencies ->
mil.lib
另外,在此之前,还需添加MIL库的相应目录:Tools -> Options -> Projects and
Solutions -> VC++ Directories -> Show Directories for ->
在Include files中添加C:/Program Files/Matrox Imaging/Mil/Include 以及 Tools
-> Options -> Projects and Solutions -> VC++ Directories ->
Show Directories for -> 在Library files中添加C:/Program Files/Matrox
Imaging/Mil/LIB。添加目录的目的是为了使VC在调用相应库文件时不必总是使用绝对地址,VC可以通过文件名在所包含的目录中进行搜索。这
样,前面的mil.lib就不必使用绝对地址了。
【缺点】可移植性差,如果将原工程中的源文件和头文件中的内容copy下来重新建立该工程时(例如:在电子书或网络上找到的程序),仍需自己在工程中添加目录及所需的库文件。
2. 在程序前加入#pragma commet(lib, "mil.lib")也可以达到相同的效果。
【优点】避免了方案1所出现的问题。
转自: http://www.cnblogs.com/tekson/archive/2009/06/17/1505196.html
相关文章推荐
- error LNK2019:unresolved external symbol *** referenced in function ***的解决方案
- vs 2005链接时错误的解决方案 error LNK2019: unresolved external symbol __security_cookie referenced in function
- Error LNK2019:Unresolved External Symbol *** Referenced In Function ***的解决方案(转)
- vs 2005链接时错误的解决方案 error LNK2019: unresolved external symbol __security_cookie referenced in function
- error LNK2019:unresolved external symbol *** referenced in function ***的解决方案
- error LNK2019: unresolved external symbol __imp__AlphaBlend@44 referenced in function "void __cdecl
- 关于 error LNK2019: unresolved external symbol _cvLoadImage referenced in function _main问题的解决办法
- error LNK2019: unresolved external symbol _WinMain referenced in function
- error LNK2019: unresolved externalsymbol _RtlStringVPrintfWorkerA@20 referenced in function _RtlStri
- error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
- Error 1 error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup LI
- error LNK2019: unresolved external symbol __imp__JNI_CreateJavaVM@12 referenced in function _wmaim
- error LNK2019: unresolved external symbol _WinMain@16 referenced in function ___tmainCRTStartup
- error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
- error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
- error LNK2019: unresolved external symbol main referenced in function __tmainCRTStartup
- error LNK2019: unresolved external symbol __imp__strnicmp referenced in function _isWithBlack_me@12
- error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartup
- error LNK2019:unresolved external symbol *** referenced in function ***的解决方案
- 错误 1 error LNK2019: unresolved external symbol _main referenced in function ___tmainCRTStartu