ld相关内容
我试图编译一个简单的ssl程序(它是从openssl书源代码)。 程序有以下文件:common.h common.c client.c server.c 我安装了openssl 0.9.7,所以我有同样的版本的书。 我已经下载了源代码和./Configure,make,make测试,在主目录中进行安装。 在common.h中有以下包括: #include
..
这个标题有很多问题,但我发现没有答案为我工作... 我有以下代码: #define BOOST_TEST_DYN_LINK #define BOOST_TEST_MODULE Hello #include int add(int i,int j) { return i + j; } BOOST
..
我试图使用 ld 直接链接以隔离构建问题。 code> /usr/lib/gcc/x86_64-linux-gnu/4.7/libstdc ++。所以,我遇到了一些问题: ac-aaa.o:在函数`__static_initialization_and_destruction_0'中: /usr/include/c++/4.7/iostream:75:undefined对`__ds
..
以下是工作正常的代码 class HttpService { public: virtual〜HttpService(); // implements in .cpp protected: HttpService(struct MHD_Connection * conn){} }; class HttpFileService:public HttpService {
..
我有一个微不足道的C ++代码,看起来像这样: #include& boost / timer / timer .hpp> int main(void){ boost :: timer :: auto_cpu_timer t; return 0; } 我尝试编译并链接它(使用gcc 4.8.1和GNU ld 2.23.52.20130828)如下:
..
我得到一个链接器错误,说当我尝试使用g ++编译RInside示例文件时,无法找到符号。任何帮助将不胜感激。 R版本2.13.1安装在Mac OS X 10.5上。 Rcpp和RInside包含文件已经复制到usr / include目录。 R头文件和库已经使用g ++的-I和-L修饰符包含,如下所示: $ g ++ -I / Library /Frameworks/R.framew
..
我按照 https://sites.google.com/site/dwhipp上的说明操作/ tutorials / mac_compilers 用于OSX Lion和XCode 4.3在命令行上使用g ++,但是当我运行它时,我得到: code> jeff〜/ Dropbox / cpp $ g ++ hello.cpp ld:未知选项:-no_compact_unwind co
..
我们有一个具有高性能需求的消息处理系统。最近我们注意到,第一个消息比后续消息花费的时间长很多倍。一堆变换和消息增加发生在这通过我们的系统,大部分是通过外部lib完成。 我刚刚剖析这个问题(使用callgrind),比较一个消息的“运行”和许多消息的“运行”(提供比较的基线)。 我看到的主要区别是函数“do_lookup_x”占用了大量的时间。看看对这个函数的各种调用,他们似乎都被公共函
..
我有一些非空的构造函数的全局实例的简单声明。这些构造函数在启动期间自动调用。我在Linux上交叉编译C ++到不同的微控制器目标。 至于 arm-none-eabi-gcc-4.8.4 rx-elf-gcc-4.8-GNURX_v14.03(GCC 4.8。 3) 调用构造函数放入 .init_array 部分。地图文件如下所示: .init_array 0x00007c
..
我有一些非空的构造函数的全局实例的简单声明。这些构造函数在启动期间自动调用。我在Linux上交叉编译C ++到不同的微控制器目标。 至于 arm-none-eabi-gcc-4.8.4 rx-elf-gcc-4.8-GNURX_v14.03(GCC 4.8。 3) 调用构造函数放入 .init_array 部分。地图文件如下所示: .init_array 0x00007c
..
几天后,我们处理了一个很奇怪的问题。 我不明白这是怎么发生的 - 当第三方我们的共享库,它以某种方式覆盖我们的一些符号(提高,精确)与它自己的。这些符号是静态链接和(!!)本地。 这里是交易 - 我们使用boost 1.47,MATLAB有boost 1.40。目前,库调用segfaults从我们的图书馆到他们的提升(regex)。 因此,这里是神奇的: 我们没有库依赖项,
..
我使用Eclipse CDT尝试使用Ogre 3D引擎编译项目。 但是不知何故MinGW的是无法找到我对链接的静态库 这是错误信息: c:/ mingw / bin /../ lib / gcc / mingw32 / 4.6.1 /../../../../ mingw32 / bin / ld。 exe:找不到-lzziplib_d c:/ mingw / bin /../
..
我一直试图做一些应用程序,它们都依赖于同一个库,动态库是我第一个想法:所以我开始写“库”: / * ThinFS.h * / class FileSystem { public: static void create_container(string file_name); //创建一个新容器 }; / * ThinFS.cpp * / #include“ThinF
..
我正在尝试通过matlab编译c ++ ubuntu项目这里 a>。当我在编译make命令后尝试使用它,我得到以下错误: 无效的MEX文件 '////fashionista_v0.2/lib/+bsr/buildW.mexglx': //local/MATLAB/R2011a/bin/glnx86/../../sys/os/glnx86/ libstdc ++。so.6:版本 `GLIBC
..
我知道这表明链接器问题,大多是未解决的符号。我知道,为了解决这个问题/摆脱这种错误,人们将不得不提供更多的信息。我知道有很多问题,以解决这个问题已经SO。 我的问题旨在帮助理解make和ld,找出什么(和谁) collect2:ld退回1退出状态 “collect2:”是什么意思?这是一个步骤调用吗?我在系统上找不到该名称的可执行文件。 这是否意味着我使用l
..
假设我有两个源代码文件 - UndefErr.cpp : include void UndefFunc(); void Func2(){UndefFunc();} void Func1(){printf(“Hi\\\ ”);} / pre> 并且 main.cpp : void Func1(); int main(){
..
请考虑此文件 first.cpp ,其中包含类定义并使用: #include struct Foo { Foo(){std :: cout
..
我在C ++中编写一个excel文件生成器。 我有一切我需要工作,但我仍然依赖外部空xlsx文件,我解压缩,迭代 我想做的是通过将xlsx文件转换为二进制blob来删除这个依赖关系.rodata部分,通过将它首先转换为一个目标文件像这样: $ ld -r -b binary - o template.o template.xlsx $ objcopy --rename-s
..
我在Linux上构建一个C ++可执行文件。 这是我尝试运行二进制文件时的输出: root @ yourbox:〜/ work / dev / c ++ / projects / testfgci / dist / Debug / GNU-Linux-x86 $ ./testfgci ./testfgci:库:libboost_system.so.1.45.0:无法打开共享对象文
..
此问题的标题是精确复制 ,但是这个问题的答案不能帮助我。 我有一堆静态库中的对象文件: %g ++ -std = c ++ 98 -fpic -g -O1 -c -o foo.o foo.cpp %g ++ -std = c ++ 98 -fpic -g -O1 -c -o bar.o bar.cpp %ar -rc libsome.a foo.o bar.o 我
..