腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
静态
库
链接两次
我有以下设置: 你怎么解决这个问题?谢谢你的回答,我现在可以准确地解释我的情况了。
动态
库
有静态
库
浏览 6
提问于2015-07-03
得票数 9
回答已采纳
1
回答
理解
Linux
中的
动态
库
加载
、
、
、
我试图从这里1开始理解
Linux
中的
动态
库
加载,并想澄清这个概念。具体来说,当在
Linux
环境中的进程中加载
动态
库
时,它将在地址空间的任意点加载。现在,
库
有一个代码
段
和一个数据
段
。代码
段
的地址不是预先定义的,所以它是0x0000000,而对于数据
段
,一些数字被定义为地址。 但是这里有一个诀窍,这个数据
段
的地址实际上不是真正的地址。实际上,无论加载哪个位置代码
段
,数
浏览 4
提问于2014-03-20
得票数 2
回答已采纳
1
回答
环境重写
Linux
链接器/加载程序
、
、
、
、
在谷歌上,我发现了一个
Linux
专用的手册页面,讨论了链接器/加载器使用的,包括LD_DEBUG。所以从理论上讲,我已经准备好了。但在实践中,我确信我忽略了与工具链中的这个基本工具相关的一整套技巧。
浏览 5
提问于2009-01-13
得票数 2
回答已采纳
1
回答
Linux
内核如何
动态
地使用模块?
、
、
、
理解
Linux
内核说模块是
Linux
内核的共享
库
吗?
Linux
内核如何
动态
地使用模块?是通过
动态
链接(使用LD_LIBRARY_P
浏览 0
提问于2018-10-17
得票数 0
回答已采纳
2
回答
在嵌入式系统中使用具有基本实用程序功能的开源轻量级c++
库
是什么?
、
我在想像这样的东西,但可能是一个占用空间最小的轻薄版本。它将需要基本的实用程序,如链表、向量和哈希表。它还应该具有最小的运行时占用空间。
浏览 1
提问于2010-10-17
得票数 7
回答已采纳
2
回答
qemu运行编译的二进制文件
、
、
、
、
试图运行我从qemu上的固件中提取的编译后的二进制文件,但是遇到了以下
错误
:/system
浏览 3
提问于2017-12-03
得票数 4
回答已采纳
2
回答
在不同的机器上运行二进制文件会导致
段
错误
、
、
我希望这能起作用,因为两台机器上的
库
是相同的(我想!)并且
linux
的版本是相同的(相同的内核等)但是,当我把它复制过来的时候...当我运行它时,它似乎在我
动态
链接的一个
库
中出现了segfault。但在我用scp将其转移到的机器上,当我运行二进制文件时,它立即在调用堆栈中的std::string::compare上与我
动态
链接的某个
库
中的一些函数分段。我尝试在两台机器上再次安装
库
,并执行ldconfig,但结果相同。 关于如何调试这些由
动态
链接问题引起
浏览 2
提问于2011-02-22
得票数 0
1
回答
GCC交叉编译为i586体系结构(Vortex86DX)
、
、
它使用以下命令行进行编译:当我在目标体系结构上运行test586时,我会得到以下
错误
这只是一
段
很小的代码--真正的代码大约有10个不同的
库
,它们都是用C++ 11编写的。 $ ldd ./test586libc.so
浏览 0
提问于2015-09-25
得票数 2
回答已采纳
1
回答
C++:虚方法调用上的Shared_Ptr
段
错误
,但不是取消引用
、
、
、
main时{ theA = makeanA();} 我从accessMyFunc中的->得到了一个
段
错误
但是,*myVec[0]没有分段
错误
,并且我已经在A的赋值构造函数中检查了shared_ptrs是否被正确复制。为什么这种
段
错误
不是在取消引用时发生的,而是在方法调用时发生的?
浏览 1
提问于2015-06-25
得票数 1
1
回答
``dlopen()‘通过调用
动态
链接器’`ld
linux
.so‘执行
动态
链接吗?
、
CSAPP说dlopen()是否通过调用
动态
链接器ld-
linux
.so来执行
动态
链接?ld-
linux
.so是dlopen()调用来执行
动态
链接的
动态
链接器吗? 谢谢。
浏览 0
提问于2020-09-27
得票数 0
回答已采纳
2
回答
在应用程序运行时,
动态
链接器如何解析引用?
、
、
假设我有一个源文件dll.c,它使用dlopen和dlsym函数在运行时加载一个名为F.so的共享
库
。下面的图片是可执行对象prog,它是 因此,.text部分包含了some_function()的引用,当porgram我的问题是: Q1-在我看来,
动态
链接器需要修改内存中的.text部分( some_function()属于它)(可执行文件被复制到内存中),这样some_function()的引用才能被解析,我的理解正确吗Q2-如果
动态
浏览 4
提问于2020-09-02
得票数 0
回答已采纳
1
回答
尝试录制的程序并获得异常未满足的链接
错误
我一直在尝试将Android上的
Linux
TTY串行端口更改为常规串行端口(输入和输出)。在挣扎了一
段
时间后,我找到了以下网页: 试着让它工作起来。我是使用Eclipse构建的。它的构建没有
错误
。这是一个演示内核的项目,它允许向
Linux
TTY串行端口写入数据。我使用debug运行了这个应用程序,然后出现了一个菜单。我在菜单上选择了Setup,应用程序运行得很好。然后我选择了控制台,我得到了以下
错误
:Thread&
浏览 2
提问于2011-06-04
得票数 0
回答已采纳
1
回答
使用
Linux
C代码和头文件编译Windows DLL
、
、
、
、
我想知道在一般情况下,是否可以从C代码和我在C++发行版中找到的头文件开始,用Visual
Linux
2010创建
Linux
。从理论上讲,如果我从
Linux
上拿了一
段
C代码(包括不同的头文件),在
Linux
文件系统中找到了连接项目所需的所有头文件,我能用Visual C++ 2010在Windows中成功编译项目吗?编译完
动态
链接
库
之后,我想在一个C#应用程序中使用它,我将在带有Mono的
Linux
下运行它。
浏览 1
提问于2012-11-04
得票数 1
2
回答
在
Linux
中共享可执行内存页?
、
、
、
、
基本上,我希望有一个共享内存区域,可以将一些常用的共享
库
加载到其中。我想让
动态
链接器链接到预加载(只读)映像,而不是将所有共享
库
映像加载到每个进程(这似乎是一种浪费)。为了澄清,我知道什么是共享对象(
库
)。目前,
动态
链接器在
Linux
上所做的工作是将所有必需的
库
加载到程序的地址空间中,这意味着每个链接到libc的应用程序(例如)将在其地址空间的某个位置有libc的映像。编辑:我知道ELF格式不支持分离共享
库
的数据
段
和文本段。我不使用E
浏览 6
提问于2012-04-11
得票数 2
回答已采纳
2
回答
ld-
linux
.so*是如何链接和加载的?
、
、
、
出于好奇,linker/loader ld-
linux
.so*本身是如何链接和加载的?上面的截图显示,file和ldd似乎给出了自相矛盾的结果:一个是静态链接的,另一个是
动态
链接的。 那么加载程序本身是如何加载的呢?
浏览 5
提问于2016-05-04
得票数 2
回答已采纳
2
回答
什么是链接器,什么是
动态
链接中的加载程序?
、
、
CSAPP (3ed)在p733中说在p736中:
动态
链接 7.10
动态
链接到共享
库
之后,我们将把它链接到图7.7中的示例程序:
linux
接下来,它注意到prog2l包含一个.interp部分,其中包含
动态
链接器的路径名,这个
浏览 0
提问于2020-09-27
得票数 -1
1
回答
无法执行节点命令的二进制文件
、
、
当我执行:/bin/sh -xe节点-v时,会得到
错误
:节点:节点:无法执行二进制文件文件/bin/bash输出:/bin/bash: ELF 64位LSB可执行文件x86-64,version 1 (SYSV),
动态
链接(使用共享
库
),用于GNU/
Linux
2.6.18文件节点节点: ELF 64位LSB可执行文件,x86-64,version 1 ( GNU/<e
浏览 5
提问于2017-06-14
得票数 1
2
回答
什么时候执行程序和共享
库
之间的
动态
链接?
、
、
、
在C中,在程序和共享
库
之间执行
动态
链接时: 不确定OS是否重要,我正在使用
Linux
。从操作系统概念: 通过
动态
链接,每个
库
例程引用的图像中都包含一个存根.存根是一小部分代码,它指示如何定位适当的内存驻留
库
例程,
浏览 2
提问于2018-06-10
得票数 2
1
回答
什么是"Windows不支持适当的
动态
链接?“
、
、
、
我已经阅读了
Linux
dlopen()和dlsym()的文档,它们分别打开
动态
库
并在库中加载符号。
Linux
和Windows
动态
库
调用不同的原因是什么?
Linux
上的
动态
库
能够在可执行文件中加载符号,这是唯一的区别吗?但是这意味着可执行文件也是<
浏览 2
提问于2017-02-02
得票数 0
回答已采纳
2
回答
dlopen()如何创建只读VMA?
、
我研究了在
Linux
下dlopen()是如何在内存中加载
动态
库
的。但是我找不到glibc
库
是如何在内存中创建只读区域的。Glibc的dlopen()使用程序头查找LOAD类型的
段
,并将其映射到内存中。对于
动态
库
,这只是前两个:Type Offset VirtAddr PhysAddreh_frame_hdr .eh_frame 01 .init_array
浏览 2
提问于2019-08-06
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
警惕利用Linux预加载型恶意动态链接库的后门
Linux调试工具|Addr2line
从四个问题透析Linux下C++编译&链接
探索静态库与动态库的“奥秘”
C+程序编译之谜(二)——隐藏源码,动态和静态链接库的秘密
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券