linker相关内容
静态库不与其他静态库链接,对吗? 所以当我写一个slib:A,它使用另一个:B的功能,所有我必须提供的是B到A的标题,如果A实际使用B的功能? 是? 只要使用A的exe:X,将B.lib指定为链接器输入? 所以在链接时,链接器接受A.lib,它基本上只知道B的函数被调用其代码中的某处,并以某种方式填充来自B.lib的信息,使A.lib'整个',之前X与现在的工作部分链接?
..
我正在学校项目,我从Xcode得到一些奇怪的错误。我使用TextMate的Command + R函数来编译项目。编译似乎工作正常,但链接失败与错误消息我不明白。 ld输出: ld:重复符号text_field(std :: basic_istream >&)in /path/final/build/final.build/Release/final.build/Objects-norm
..
我试图找到一个好的方法来确定链接时的什么模块导致某个库被处理为“/ DEFAULTLIB”,如Visual Studio的详细链接器输出中所示。 这里是我的情况,我有几个静态库先决条件,每个都有一个版本和调试版本(BlahD.lib和Blah.lib)。由于某种原因,在链接时,所有的D.lib都被处理为默认库,即使我正在构建一个版本,非调试libs指定为“附加依赖”。如果我从来没有构建静态库
..
我使用NetBeans,Windows和Cygwin与g ++编译器。 我正在检查Windows Sockets 2.我做的一切,写在MS 手动。我有一个代码(大多来自本手册): #include #include #include #include #pragma
..
我使用NetBeans,Windows和Cygwin与g ++编译器。 我正在检查Windows Sockets 2.我做的一切,写在MS 手动。我有一个代码(大多来自本手册): #include #include #include #include #pragma
..
我试图使用静态版本的测试库来源。我有libtest.a和libtest.so可用,所以我使用“-static”选项。但是,看起来gcc链接器也试图搜索静态版本的标准数学库。 任何想法我可以用来链接标准库的共享版本的选项? g ++ -static main。 cpp -o a.out -L。 -ltest 错误: / usr / bin / ld:找不到-lm
..
我试图使用静态版本的测试库来源。我有libtest.a和libtest.so可用,所以我使用“-static”选项。但是,看起来gcc链接器也试图搜索静态版本的标准数学库。 任何想法我可以用来链接标准库的共享版本的选项? g ++ -static main。 cpp -o a.out -L。 -ltest 错误: / usr / bin / ld:找不到-lm
..
我将系统从10.8升级到10.9,相应地将xcode从5.0升级到5.0.1。 当我尝试运行我的一部分构建将多个.a文件合并为一个更大的共享库: 架构x86_64的未定义符号: “__ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13find_first_ofEPKcmm”,引用自:在libbtfst.a
..
我遇到一些错误“链接错误LNK2005 ...已定义”的问题。文件如下: //文件Bitmap4.cu #include“Bitmap4.h”// header #include“Bitmaps_cuda.h”//只有内核定义的头 ..... //我调用3 + 2内核函数(3在一个方法,1在另一个和另一个) 然后我有这个: // File Bitma
..
我将系统从10.8升级到10.9,相应地将xcode从5.0升级到5.0.1。 当我尝试运行我的一部分构建将多个.a文件合并为一个更大的共享库: 架构x86_64的未定义符号: “__ZNKSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE13find_first_ofEPKcmm”,引用自: __ZN2bt3f
..
我有提到的问题。我在静态库中创建一个对象,当我在静态库中运行 nm 时,但是当我将lib链接到一个二进制文件并运行 nm 它已经消失。我知道这个问题以前被问过,但我找不到任何答案。对我来说重要的是能够在二进制中保留该变量,因为我们试图对二进制中的静态库执行版本检查。请帮忙。谢谢。示例代码如下: test.h #ifndef TEST_H #define TEST_H cl
..
Qt5是新一代的Qt,它有一些变化。 我有一个项目与Qt4建立良好。我已经下载Qt5-VisualStudio2010包,我试图将我的项目从Qt4到Qt5。出现问题。 所有“include”路径已修复。但是,编译器现在报告数百个未解析的外部符号(几乎所有的函数调用,听起来像编译器不能找到任何.lib文件)。我甚至试图添加在Qt SDK文件夹中找到的所有.lib文件,但没有用。最基本的类
..
我有一个图书馆A,我开发。当我在机器上部署它时,相应的 libA.so 和 libA-X.Y.Z.so 放在/ usr / lib(X.Y.Z是版本号)。 现在我开发一个库B,它使用A.当我链接B,我使用标志-lA。然后“ ldd libB.so ”给我: (...) libA-XYZso => / usr / lib / libA-XYZso (...) 当我发布
..
作为这里的后续问题:我的Makefile将执行链接,即使代码中没有更改。为什么?如何避免这种行为,所以 make 如果代码没有改变就不会做任何事情? OBJS = main_no_mkl.o SOURCE = main_no_mkl.cpp HEADER = IO.h OUT = test CXX = ../ .. / mpich-install / bin / mpic
..
我使用崩溃报告服务跟踪我们的Android应用程序(使用NDK加载C ++库)崩溃。少数用户遇到以下崩溃: java.lang.UnsatisfiedLinkError:dlopen failed:empty / missing DT_HASH in“ cpplibrary.so“(使用--hash-style = gnu?构建) 在java.lang.Runtime.loadLibrar
..
我试图在一个跨平台项目中使用boost来执行文件/目录操作。我一直在使用visual studio,但为了在linux上编译,我决定切换到SConstruct。 我不能[正确]链接到文件系统 我的SConstruct文件如下: vLibs = [ 'libboost_system-vc100-mt-1_44.lib', 'libboost_filesystem-vc100-mt
..
我尝试建立时会得到以下结果: 架构的未定义符号x86_64: “Poco :: Net :: SocketAddress :: SocketAddress(std :: __ 1 :: basic_string,std :: __ 1 :: allocator> const& unsigned sh
..
当试图编译一个简单的c ++ test.cpp代码与opencv 2.3.1作为第三个 库,我得到以下错误信息: 架构x86_64的未定义符号: “_cvLoadImage”,引用自: _main in test.cpp.o ld:没有为架构x86_64找到的符号 有关信息,我使用CMake链接, 4.2.1从Xcode 4.2获取的i686-apple-darwin11 。
..
我是C / C ++的初学者,所以请随身携带。 我正在尝试构建PortAudio库,的我的项目。我使用VS 2013,建筑的预设项目文件必须转换为我的版本。我已经能够解决在我的长途上发生的所有许多问题,除了一个: 链接:fatal错误LNK1104:无法打开文件'ksguid.lib' 我看过这和 this 网站。所有这些都解决了这个问题,但他们没有能够解决它。以下是这
..
我的代码存储在包含 void main()函数的 main.cpp 文件中, class MyClass ,现在我想将其拆分为另一个文件。 IDE是Microsoft Visual Studio 2008 Professional。 myclass.h #include class MyClass { public: static bool MyFunct
..