腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
静态
库
链接两次
我
有
以下设置: 数据(全局变量、
静态
类成员)是否也
重复
,可执行文件和dll是否看到相同
的
数据?你怎么解决这个问题?编
浏览 6
提问于2015-07-03
得票数 9
回答已采纳
1
回答
gcc ld是否只包含可执行文件内部使用
的
相关函数
的
.text?
、
我已经将各种.c源代码编译到各自
的
.o目标文件中,并将其归档为.a归档文件。假设在main()函数中,我使用了foo()函数。在编译和链接之后,可执行文件是1)只包含foo()函数
的
.text以及foo()递归调用
的
所有其他函数,还是2)它包含foo()所在
的
整个.o,或者3)整个.a文件中
的
.text?希望采用选项1),因为在空间受限
的
环境中,它将仅包括最小数量
的
指令。我该如何实现这一点呢?
浏览 1
提问于2011-09-19
得票数 1
回答已采纳
1
回答
如果包含映射
的
静态
库
与可执行库和动态
库
链接,
静态
映射(变量)是否会被多次释放?
、
、
我们
有
一个在
静态
库
中
定义
的
静态
映射。可执行文件链接
静态
库
以及上述动态
库
。( a)
静态
库
代码是否
重复
? ( b)在
静态
库
中
定义
的
静态
地图是否
有
多个副本?
浏览 1
提问于2020-01-15
得票数 1
回答已采纳
1
回答
链接时,不同
静态
库
中
的
相同对象文件
、
、
-o lib.so 在生成foo.cpp时,来自lib.so
的
重复
符号会发生什么?是否
有
任何标志要求不产生符号复制错误?
浏览 4
提问于2020-01-30
得票数 2
回答已采纳
2
回答
寻找
Linux
上
的
静态
链接排序工具
、
、
在
Linux
下,有没有合适
的
工具来确定g++
的
最优
静态
链接顺序?我熟悉一般
的
问题,包括(如果必要)使用对单个
库
或--start-group和--end-group
的
重复
引用来解决循环依赖,但如果可能的话,我想要
的
是一个工具,它可以获取一堆.a文件,并为它们显示一个良好
的
静态
链接顺序,如果需要,可以
重复
使用这些
库
,同时将
重复
的
次数
浏览 1
提问于2011-06-22
得票数 11
2
回答
在标头中
定义
的
静态
类方法中
的
C++
静态
变量
、
、
main() { std::cout << someOtherCallMe(); }Note澄清这一情况。
浏览 4
提问于2016-02-25
得票数 7
回答已采纳
2
回答
混合调试和发布
库
: Windows vs
Linux
,
静态
与共享
、
、
、
这是有意义
的
,考虑到MSVC失败时出现了以下错误: 我想更好地理解这一
浏览 2
提问于2019-04-19
得票数 0
回答已采纳
6
回答
VC++不替换不同对象
的
定义
,GCC等
、
、
、
、
我
有
一个使用许多
静态
库
的
大型应用程序,它与平台无关,部署在Windows和
Linux
下。所有
静态
库
和main()本身都有两个
定义
:这些
定义
由每个
静态
库
中
的
宏和main内部
的
宏使用,用于将当前
的
lib版本存储在类似注册表
的
类中在GCC /
浏览 6
提问于2010-01-13
得票数 0
5
回答
在现代
Linux
发行版中,共享
库
真正节省了多少磁盘空间?
、
、
在
静态
库
与共享
库
的
争论中,我经常听说共享
库
消除了
重复
,减少了整个磁盘空间。但是,在现代
Linux
发行版中,共享
库
真正节省了多少磁盘空间?如果所有程序都是使用
静态
库
编译
的
,那么还需要多少空间?有没有人为一个典型
的
桌面
Linux
发行版(如Ubuntu )计算过数字?
有
什么统计数字吗?所有的答案都是信息丰富
的
,并受到赞赏,但
浏览 0
提问于2010-01-20
得票数 4
回答已采纳
3
回答
为什么不在这个
静态
库
中创建多个
定义
的
符号?
、
、
在
静态
库
项目中,我
有
一个已声明但未实现函数
的
头文件。然后,为了更好地理解链接器错误,我复制了cpp文件,所以我
有
一个与它完全相同
的
副本,它也会被编译。这里是
静态
库
的
一个最小示例:void printWhatever();#include "api
浏览 6
提问于2016-06-16
得票数 6
回答已采纳
5
回答
全局变量在执行和共享libaray编译时在Windows上有多个副本,在
Linux
上有一个副本
、
*问题修订(见下文) *static Foo bar;是什么控制了
Linux
上
的
这种行为,我可以改变它吗?例如,是否<
浏览 9
提问于2011-02-07
得票数 7
回答已采纳
2
回答
为什么可以覆盖某些
静态
库
中
的
符号,而不能覆盖另一些
静态
库
的
符号?
、
为了提高开发时间,我决定重新
定义
我
的
程序代码中感兴趣
的
符号,并让链接器来处理其余
的
部分:,在程序代码和
静态
库
中都
定义
的
符号
的
程序版本在链接时优先使用,而不需要大惊小怪。(链接
的
答案与
Linux
有关,但我发现这也适用于macOS --通常是这样。) 当我使用可从LLVM网站下载
的
用于macOS
的
stock构建时,这是非常有效
的
。我
的</em
浏览 1
提问于2018-08-14
得票数 1
回答已采纳
2
回答
如何减小log4cplus
静态
库
的
大小
它非常方便,并且符合我们
的
要求。唯一
的
问题是它太大了。编译后
的
静态
库
在
Linux
(64位)上约为11M。 是否
有
可能通过在构建时指定一些参数来减小其
静态
库
的
大小?我尝试了'strip -strip all‘,但在将
库
链接到我
的
程序时,我得到了一些未
定义
的
引用错误。
浏览 2
提问于2012-12-19
得票数 0
回答已采纳
1
回答
应该按什么顺序链接libavdevice和x11
的
静态
链接
库
?
、
、
、
、
目前在
静态
链接我
的
项目时有问题。在以
静态
链接方式添加avdevice之后,我收到了以下错误。 下面是我
静态
添加
的</em
浏览 6
提问于2019-12-20
得票数 2
1
回答
导出链接到动态
库
的
静态
库
中
的
符号
、
、
、
、
在MSVC2017中
有
以下场景: extern "C" __declspec(dllexport) bool foo() return true; 现在,由于动态链接
库
没有使用我试过: #pragma comme
浏览 0
提问于2019-05-27
得票数 5
4
回答
如何避免在使用C++
库
时包含相同
的
代码?
、
、
、
编辑:我知道包含守卫,但包含文件是而不是在这里
的
问题。我说
的
是实际编译
的
、已经链接到
静态
库
中
的
代码。 我正在C++中为自己创建一个通用实用程序
库
。我正在创建
的
函数之一printFile需要string、cout和标准
库
的
其他类似成员。我担心,当
库
被编译,然后链接到另一个同时使用string和cout
的
项目时,string和cout
的
代码将被复制:它们都将在程序正在
浏览 6
提问于2012-12-31
得票数 7
回答已采纳
3
回答
试图
静态
链接Boost
、
、
、
我在
Linux
、Eclipse、g++和Boost
库
中工作。
有
了使用Boost线程
的
现有程序,我尝试
静态
地而不是动态地链接它。/main.o -lboost_threadg++ -static -o"MyProgram" ./main.o -lboost_thread未
定义
的
对`pthread_mutex_init
的
引用 如何<
浏览 5
提问于2010-02-27
得票数 14
回答已采纳
1
回答
如何阻止跨QMetaObject共享
库
重复
的
macOS
定义
?
、
、
、
以下qobject_cast()在macOS 10.12.2/clang上失败(并在RHEL6 6/gcc上工作),因为我们
的
Handler类
有
重复
的
QMetaObject
定义
: void AbstractDataView这是我们
的
应用程序加载
的
;Handler类(从QAction派生)实例由可执行文件构造,并传递给共享
库
插件构造器。Handler是在内置到应用程序和共享
库
插件中
的
静态</
浏览 1
提问于2017-02-02
得票数 0
回答已采纳
2
回答
链接器如何解析动态可加载
库
中
的
重复
符号?
、
、
、
、
我
有
两个动态加载
库
lib_smtp.so和libpop.so等等,它们都有一个名为protocol
的
全局变量,该变量分别初始化为"SMTP“和"POP”。我
有
另一个
静态
库
libhttp.a,其中protocol被初始化为"HTTP“。 现在,出于某种原因,我需要
静态
编译所有动态、可链接和可加载
的
库
,并将其包含在可执行文件中。在
静态
库
的
链接过程中,我得到
浏览 3
提问于2015-05-06
得票数 4
1
回答
VS2017不将其他包含目录复制到远程env (
linux
),导致编译错误
、
、
、
我正在使用VisualStudio2017 c++跨平台项目(
linux
)。我能够编译并运行一个可执行项目。 现在我已经创建了两个c++项目。一个是
静态
库
,另一个是动态
库
。动态
库
使用
静态
库
中
的
一个类,因此对于包含类
定义
的
相应头文件,我
有
一个#include语句。编译失败,说没有找到头文件。我将包含目录添加到项目属性中
的
其他包含目录(通常用于windows vc++项目)。但是,头文
浏览 2
提问于2017-09-14
得票数 2
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux库概念,动态库和静态库的制作,如何移植第三方库
探索静态库与动态库的“奥秘”
应用 Swift 静态库的各种坑
go语言静态库的编译和使用
Java之静态内部类的定义、特点及使用详解
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
实时音视频
活动推荐
运营活动
广告
关闭
领券