c – 更改静态库的“动态RTL”设置有什么影响?

前端之家收集整理的这篇文章主要介绍了c – 更改静态库的“动态RTL”设置有什么影响?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Embarcadero RAD Studio 2010中,静态库的项目选项中有一个名为“动态RTL”的设置. (它在TLib部分.)

我的印象是,关于是动态还是静态链接RTL的决定是在链接时进行的,而不是在编译时进行的.但静态库只能编译;没有链接步骤.那么,更改此选项如何影响我的静态库?

我有一些使用这些静态库的.exe和.dll项目,我在这些项目中设置了“动态RTL”选项.这是有道理的,因为它们实际上有链接的东西,但我不明白这个设置对静态库有什么影响.

如果静态库具有动态RTL = true而使用此库的DLL和EXE具有动态RTL = false,是否会导致任何问题?

解决方法

我不使用Embarcadero,而是使用旧版本的C Builder.我认为他们的工作方式相同.当您使用动态RTL时,您的代码将从程序附带的运行时DLL中调用RTL函数.如果不使用动态RTL,则会将函数从lib复制到exe或lib文件中.我使用动态RTL减小EXE文件的大小. exe或libs的逻辑是相同的.这意味着如果您在任何模块中使用动态RTL,无论是exe还是lib,您都必须运送相应的运行时DLL.
原文链接:https://www.f2er.com/c/119774.html

猜你在找的C&C++相关文章