MS VC++ 2010的这个链接器错误是啥意思[重复]

Posted

技术标签:

【中文标题】MS VC++ 2010的这个链接器错误是啥意思[重复]【英文标题】:What is the meaning of this linker error from MS VC++ 2010 [duplicate]MS VC++ 2010的这个链接器错误是什么意思[重复] 【发布时间】:2013-12-30 19:57:50 【问题描述】:

我刚刚从 Stroustrup 的主页安装了 FLTK 库和一堆头文件.... 我知道它找不到一些文件,但是任何人都可以给我任何关于具体可能是什么问题的想法吗?

1>Graph.obj : error LNK2019: unresolved external symbol "public: __thiscall Fl_GIF_Image::Fl_GIF_Image(char const *)" (??0Fl_GIF_Image@@QAE@PBD@Z) referenced in function "public: __thiscall Graph_lib::Image::Image(struct Point,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,enum Graph_lib::Suffix::Encoding)" (??0Image@Graph_lib@@QAE@UPoint@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4Encoding@Suffix@1@@Z)
1>Graph.obj : error LNK2019: unresolved external symbol "public: __thiscall Fl_JPEG_Image::Fl_JPEG_Image(char const *)" (??0Fl_JPEG_Image@@QAE@PBD@Z) referenced in function "public: __thiscall Graph_lib::Image::Image(struct Point,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,enum Graph_lib::Suffix::Encoding)" (??0Image@Graph_lib@@QAE@UPoint@@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@W4Encoding@Suffix@1@@Z)

【问题讨论】:

【参考方案1】:

找不到函数调用的定义。您可能没有链接 .lib 文件。

【讨论】:

据我所知,有一个说明如何安装这个库。您可以在 FLTK 站点或 Stroustrup 站点获取它。 @VladfromMoscow 这不是安装错误,这是未设置文件到链接的问题。所有人需要做的就是确保正确的 .lib 文件位于项目属性的“其他库”条目中。 这确实意味着安装错误。文件和/或库安装在错误的目录中,并且相应的参数设置不正确。例如,我记得有详细说明如何为 MS VC++ 安装 FLTK。 不,它确实不是意味着存在安装问题。您是否已将项目配置为链接这些库?简单地将它们放入特定目录并不意味着它们被您的项目链接。 @VladfromMoscow 如果是安装错误,他会收到“找不到库”错误,但他会收到“无法解析的外部符号”,所以他正在查找标头,而不是二进制定义的功能。当然,这些库不可能存在(并且是安装错误),但 Occam Razor 会让我认为他根本没有链接它。可能两者兼而有之。【参考方案2】:

这意味着lonker没有找到这些成员函数的定义。

【讨论】:

“lonker”是“bonkers”。 ;-) 您能说得更具体些吗?构建 FLTK 有很多步骤我没有完全理解,现在添加了 stroustrup 的私有库。我什至不知道函数在哪里被调用,因为它不是来自我的源代码。【参考方案3】:

您没有链接 fltkimages.lib 和 fltkjpeg.lib,或者如果您正在运行调试版本 fltkimagesd.lib 和 fltkjpegd.lib。

【讨论】:

可能丢失或者它们可能在那里......或者项目根本没有配置为链接它们。 做到了! (是调试版) @user2904033 你应该接受答案。

以上是关于MS VC++ 2010的这个链接器错误是啥意思[重复]的主要内容,如果未能解决你的问题,请参考以下文章

我收到一个链接器错误,我不理解 VC++ 和 FLTK [关闭]

VC++ 6 链接器错误

这些'未定义的对 __glut*WithExit' OpenGL 链接器错误的引用是啥意思? [复制]

vc++这个函数啥意思?

GLSL 错误:2001 - 此错误代码是啥意思?

vc++ 6.0里面的compile、build、go三个按钮是啥区别?