【发布时间】:2017-10-01 01:47:45
【问题描述】:
如果以cryptopp 为例,使用sudo apt install libcrypto++-dev 安装,然后使用#include <cryptopp/base64.h> 包含,该库是静态链接还是动态链接?
CMakeLists.txt 在target_link_libraries 中包含cryptopp。
【问题讨论】:
-
StackOverflow 旨在帮助人们修复现有的编程代码。请阅读stackoverflow.com/help/on-topic、stackoverflow.com/help/how-to-ask、stackoverflow.com/help/dont-ask、stackoverflow.com/help/mcve 并在此处发布更多问题之前使用tour。这可能更适合unix.stackexchange.com。祝你好运。
-
@shellter 感谢您提供链接。虽然对于有经验的用户来说这个问题可能看起来很愚蠢,但对于一个新的 C++ 用户来说,这是一个有效的问题。很大一部分人不了解 linux/c++ 如何在系统库方面协同工作。在代码方面,我正在阅读一个已完成的、正在运行的项目,并试图理解它。
-
虽然 question 肯定与编程有关(而且,从我的角度来看,这里是 on-topic),但 >answer 与编程无关:检查随包安装的文件。如果包安装了
.a文件,那么这些是静态 库,.so文件是动态 库。如果软件包同时安装了 both.a和.so文件,并且您想了解 preference,请重新提出您的问题。 -
Crypto++ 最近移除了 CMake。我们无法正确配置事物,并且在与该工具进行简单任务时达到了极限。使用 CMake 需要您自担风险。另请参阅 Crypto++ wiki 上的 Issue 506, Remove CMake from library sources 和 CMake Removal。
标签: linux cmake shared-libraries static-libraries package-management