问题标签 [unresolved-external]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 致命错误 LNK1127:库已损坏 --> 将 extern "C" 添加到函数原型后
我有一个使用 C 代码制作的外部库。我希望从我的 c++ 项目中的库中调用一个函数。函数原型的原始格式是。
这导致了 MSVC2008 中的以下链接器错误
然后我将此原型更改为
然后得到以下错误:
我已经多次重建图书馆,并且非常确定它没有损坏。任何帮助都会很棒。谢谢!!
c++ - 我有很多关于 c++ 的问题让我很困惑
在学习了 2 年的 java 之后,我大约在 3 周前开始学习 c++。看起来很不一样,但我到了那里。我的讲师是一个可爱的人,但任何时候我问一个问题,为什么事情会这样或那样。他只是回答“因为它是”。
下面的代码中有很多注释,带有一些随机问题,但主要问题是我遇到了两个构建错误,一个说 arraytotal 尚未初始化(即使我找到了它的值),另一个说外部引用主要。
有人会介意阅读代码并回答其中的一些评论,也许是我遇到的整体问题?
c++ - C++ - 未解决的外部错误
我目前正在编写一个使用链表的堆栈类。我觉得我已经完成了,但我不断收到未解决的外部错误。
这里是:
有谁知道该怎么做?我当然不会。如有必要,我可以提供代码。
opengl - OpenGL 期间的链接器错误:SuperBible 教程
我目前正试图通过编写一点 DirectX 10 和 OpenGL 3.3 在 DirectX 和 OpenGL 之间做出决定。我已经完成了 DirectX 的设置,链接和编译相当容易。OpenGL……更难。
OpenGL Superbible 有一个名为 Triangle.cpp 的开头示例,我们在其中链接了两个库freeglut_static.lib
和GLTools.lib
. 这不是问题;我还去了项目目录并包含了所有必要的 OpenGL 扩展的 Include/ 和 lib/ 路径(GLEE、Glew、Glut、FreeGlut、GLTools——该死的,够了吗?)。
首先我有几个链接器错误,因为我的代码生成是在 DLL 上设置的,而不是静态的。我已经解决了这个问题,并将其添加LIBC.lib
到链接器中被忽略的库列表中(不确定将代码生成设置为静态是否也解决了这个问题)。
现在我仍然有两个无法摆脱的链接器错误:
我在 google 上搜索了这个问题,许多人评论了程序的静态性质(我已经修复)以及 Glut.h 和 Glut.lib 之间版本冲突的特定问题。但是,我什至使用了旧版本的 Glut (3.6),链接器错误仍然存在。
谷歌中的其他搜索并没有真正提出任何合理的使用方法。所以,我在这里问:我该如何解决这个问题?
信息
代码生成: Multithreaded
C++ 预处理器命令: FREEGLUT_STATIC
IDE:Visual Studio 2008 and 2010. (Testing on both- same error on both)
忽略的库: LIBC.lib
Triangle.cpp 代码(从书中的代码中简单复制/粘贴):
c - 使用 libcurl 链接程序时未解析的符号
我知道这是编程问题,但我只是想弄清楚我做错了什么感到沮丧..
我正在使用 Visual Studio 2010 并按照此处的所有步骤操作:http: //curl.haxx.se/libcurl/c/visual_studio.pdf
当我尝试编译我的解决方案时,我不断收到此错误:
来源:
c++ - 从 cpp 文件内联函数时出现链接器错误
好吧,我在执行以下操作时遇到了链接器(未解析的外部符号)错误:
-我有一个类“对象” - 它在“object.h”中定义。
它有一个构造函数,如:explicit Object(double x, /* lots more */);
在文件“object.cpp”中,我想给该构造函数一个主体:Object::object(double x) : _x(x) {}
这有效.. 但是,如果我在“object.cpp”文件中添加关键字“inline”:
突然出现链接器错误!“错误 LNK2019:未解析的外部符号”
为什么?- 这是否意味着我不能对构造函数使用内联?
编辑:实际上我注意到所有方法都是如此。但是,如果我将所有方法移到object.h标头文件中,它确实可以工作。您不能从定义对象的头文件外部内联函数吗?
EDIT2:好吧,一个大更新,我决定构建一个快速测试用例:
main.cpp:
啊
a.cpp
这给出了以下错误:
main.obj:错误 LNK2019:函数 _main 中引用的未解析外部符号“public:void __thiscall a::test(int)”(?test@a@@QAEXH@Z)
删除“inline”关键字使程序工作。将“ah”和“a.cpp”组合到1个文件中也是如此。
我真的想不出更多信息可以提供:/
assembly - 未解析的外部符号 _WinMainCRTStartup
我正在尝试用 Masm32 组装一个简单的“Hello world”应用程序。它组装得很好,但是当我尝试链接它时,链接器说
链接:错误 LNK2001:未解析的外部符号 _WinMainCRTStartup prog1.exe:致命错误 LNK1120:1 个未解析的外部符号
这是程序的源代码:
我在一些论坛中发现这是由编码类型引起的。但是,这对我的问题似乎无关紧要
c++ - VS2010 中的 Magick++ - 未解析的外部符号
我正在尝试将 ImageMagick Magick++ 用于 VS2010 中的 C++ 项目。我从这里安装了库:klick
然后在我的项目中,我将 c:/program files/ImageMagick-6.6.6-Q16/include 添加到包含文件夹中。然后我尝试在这段代码中使用 Magick++:
但这不起作用!VS2010 返回以下错误:
我究竟做错了什么?
非常感谢您的帮助!
更新:
将链接器 -> 输入 -> 附加依赖项设置为:
和链接器 -> 常规 -> 附加库目录到:
它仍然导致相同的错误...
更新 2
打开 C:\Program Files\ImageMagick-6.6.6-Q16\lib 中的 .lib 文件会导致此错误:
更新 3
CORE_RL_Magick++_.lib 确实包含 ?InitializeMagick@Magick@@YAXPBD@Z,但不包含 ?InitializeMagick@Magick@@YAXPBD@Z。这是否意味着 .lib 文件已损坏?
更新 4
我通过手动编译 .lib 文件解决了我的问题。谢谢大家!
visual-c++ - 编译 Win32 应用程序而没有特定的依赖项或大小膨胀
我正在尝试使用 Visual C++ 2008 构建一个小型 Win32 应用程序,但我希望它可以在任何现代 Windows 机器上运行,而不必提供额外的库,也不必增加静态链接它们的大小。
我在互联网上阅读了很多关于这个主题的文章,比如这个: http: //kobyk.wordpress.com/2007/07/2...visual-c-2005/
我知道一个好主意是将我的项目动态链接到 msvcrt.dll,它可以在任何现代 Windows 作为系统 dll 中找到,而不是像 msvcr90 这样的新运行时会随着每个新的 Visual Studio 版本而变化。
所以在链接器选项中,我忽略了所有默认库 (/NODEFAULTLIB) 我将 msvcrt.lib 添加到附加依赖项中
但是我在编译时遇到了一堆“未解析的外部符号”错误,比如这些:
我还尝试使用一些替代 C++ 运行时库,旨在减少 Minicrt、WCRT 等体积膨胀,但无论如何我都会收到“未解析的外部符号”错误。
任何帮助是极大的赞赏,
提前致谢
libpng - libpng 中未解析的外部 png_set_longjmp_fn
动态加载 libpng.dll 时,从 libpng13.dll 升级到 1.5 版后,编译器开始报告这个未解析的外部:png_set_longjmp_fn
怎么会,我该如何解决?