【问题标题】: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)

【问题讨论】:

    标签: c++ visual-c++ fltk


    【解决方案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 你应该接受答案。
    猜你喜欢
    • 2013-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多