问题标签 [linker-errors]

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.

0 投票
4 回答
13588 浏览

linker-errors - 使用 GNU 链接器时出现“文件无法识别”

作为新手,我可能做错了什么。你能帮帮我吗?

我用 C 语言编写了一个名为 hello.c 的简单 Hello World 程序,并运行以下命令:

那产生了hello.s。然后我将该文件与 GNU 汇编程序一起使用as

哪个产生了一个不可执行a.out的,仍然需要链接,我明白了吗?

我尝试使用 链接它ld,如下所示:

但是得到以下错误:

ld删除我的文件。

这是一个 x86 Ubuntu 系统。我究竟做错了什么?非常感谢!

0 投票
4 回答
37583 浏览

java - java.library.path 中没有 ocijdbc9

当我尝试运行 Java 应用程序时,我收到以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no ocijdbc9 in java.library.path

我的电脑上没有文件ocijdbc9.*,但我ocijdbc10.dll%ORACLE_HOME%\bin.

%ORACLE_HOME%正确指定,所以我认为问题在于应用程序正在搜索错误的版本(9 而不是 10)。

Oracle 和 Java Builder 都是新安装的,所以问题可能出在项目偏好上?您对如何搜索指定错误版本的位置有任何想法吗?

0 投票
3 回答
20840 浏览

iphone - iPhone上的Lua?

我正在尝试在 iPhone 上使用 Lua。在 Mac OS X 上,在普通(非 iOS)Cocoa 应用程序中,我使用了以下代码:

我从 lua.org/ftp 下载了 Lua 5.1.4 并为 Mac OS X 编译了它。在 Xcode 项目中,我使用“添加现有框架”添加liblua.a,我使用“添加现有文件”添加包含目录。

这按预期工作,并打印字符串:“Hi from Lua”。当我在 iOS 项目中尝试同样的事情时,它会给出错误:

.a 文件似乎没有链接到 iPhone 应用程序。有谁知道如何使这项工作?

(顺便说一句,如果 Apple 中包含 Lua,我并不关心 Apple 可能不会接受我的应用程序。)

0 投票
5 回答
27330 浏览

c++ - 内联函数链接器错误

我正在尝试使用特定类的内联成员函数。例如没有内联的函数声明和实现是这样的:

在头文件中:

在 .cpp 文件中:

出于某种原因,如果我将“inline”关键字放在实现和声明中的任何一个以及两个地方,我都会得到链接器错误,如下所示:

为了摆脱这个错误需要做什么(即在制作这些内联成员函数方面我做错了什么)?

0 投票
1 回答
1221 浏览

c++ - Visual C++ Linking LNK2019 Error with a Precompiled Header

我对预编译头有一个非常奇怪的问题。当我在 .cpp 文件中实现方法时,链接器生成 LNK2019: unresolved external symbol 错误。但是,如果我在 .h 文件中实现方法,则可以编译程序。我碰巧找到了解决方案,但我不知道这个错误的根本原因。

我的项目结构是这样的

解决方案
-> 项目 1
-> 项目 2

项目 1 有 3 个文件。啊,A.cpp 和 stdafx.h

在项目 2 中。我想使用 A 类。

文件whatever.cpp

在编译时,链接器报告 A 构造函数的未解决的外部符号错误。如果我在 Ah 文件中实现构造函数。project2 可以成功编译。我想知道,为什么不能把实现放在 A.cpp 文件中?组织预编译头文件的正确方法是什么?

谢谢

0 投票
1 回答
2759 浏览

c++ - 链接错误“LogonUser”编译 C++ 程序?

嘿伙计们,我正在尝试编译这个 C++ 程序:

使用此命令:

但是我总是收到以下错误:

我可能已经尝试过一千种不同的方法来编译使用 LIBPATH 开关。

和许多其他人。

[更新] 如果我切换 lib 路径并将“\PlatformSDK\lib”放在“\VC\lib”开关之前,我会收到此错误:

因为它现在无法识别其他 libpath。任何的想法?[/更新]

如何声明多个 libpath?还有其他原因吗?

一如既往,谢谢大家

0 投票
1 回答
2703 浏览

visual-studio - Visual Studio 2008 中的链接器错误 2005、2001

我有一个在 VC6 中编译良好的 ATL COM 项目,在 VS2008 中编译时会出现以下链接器错误。

错误 LNK2005:“void * __cdecl operator new(unsigned int)”(??2@YAPAXI@Z) 已在 libcmt.lib(new.obj) 文件中定义:uafxcw.lib

对于和delete,还有另外三个类似的错误。new[]delete[]

我在网上查了几篇文章,其中大多数都说它是 CRT 和 MFC dll 之间的冲突。(它们被拾取的顺序)。一篇文章建议将冲突的库添加到项目设置中的忽略库列表中。

这样做,我只剩下一个错误:

错误 LNK2001:无法解析的外部符号 __afxForceEXCLUDE 文件:LMAN.Lib

错误指向该项目引用的库(我们开发的库)。

有想法该怎么解决这个吗?我相信这对于迁移到 VS 2008 的人来说是一个常见的问题。

0 投票
3 回答
8327 浏览

c++ - C++ 共享库中基类的未定义符号错误

我使用以下代码将以下代码编译为共享库g++ -shared ...

重点是将我的类(这里只是最小的玩具类作为示例)的功能公开为具有三个函数、和的简单CAPI 。initcleanupbar

当我尝试加载共享库(使用dyn.loadin R)时,出现错误:

所以,它似乎找不到Foo构造函数。我做错了什么,如何解决?

更新:谢谢,jbar!所以它是Foo 构函数。我是否可以从错误消息中的神秘符号中知道这一点:_ZN3FooD2EvDinFooD代表析构函数吗?

0 投票
5 回答
738 浏览

c++ - 编译 C++ 代码时出现链接器错误

首先,请原谅我对 C++ 的了解不足。我是一个真正的初学者!

我正在尝试在 MS VS2005 上编译一个 C++ 代码。对于以下代码,我收到如下链接器错误:-

在一个函数(某些类方法)定义中,它具有用于内存分配的代码,例如:

这个 CDecoderUnit 是一个在头文件中定义的类,类似于

实际错误是:-

错误 LNK2019:未解析的外部符号“public:__thiscall CDecoderUnit::CDecoderUnit(void)”(??0CDecoderUnit@@QAE@XZ) 在函数“private:long __thiscall CLSDEnc::CreateIPrepareDecoderUnit(struct IPrepareDecoderUnit * &)const”中引用(? CreateIPrepareDecoderUnit@CLSDEnc@@ABEJAAPAUIPrepareDecoderUnit@@@Z) lsdenc.obj

谁能指点我解决这个问题?

0 投票
1 回答
2868 浏览

c++ - Visual Studio 2005 链接器问题

我大多是 Visual Studio 的新手,所以如果这是一个基本问题,我深表歉意。我有一个包含许多项目的解决方案。在项目 A 中,我有一组预先存在的文件,我添加了一个新类。项目 B 使用项目 A 中的新类中编码的功能。首先构建项目 A,然后生成一个 .lib 文件,然后将该 .lib 文件链接到项目 B。但是,当我去创建 .lib 文件时对于 Project BI,出现链接错误,引用了我添加的 Project A 中的新功能。将“dumpbin”命令与从项目 A 生成的 .lib 文件一起使用,我注意到我添加的函数的符号不存在。但是,在项目 A 中编译新类后创建的 .obj 文件确实包含这些符号。知道为什么这些符号不会出现在项目 A 中。