c++ - 为什么同时链接libpng和opencv没有冲突?

标签 c++ opencv compiler-errors linker libpng

ios应用程序用于png读取,我们已经将opencv(with libpng)作为框架。我们要直接使用libpng而不是opencv。
发现的结果是:仅包含libpng头文件,我们就可以编译和读取png,而完整的libpng,即也将.c文件放在编译列表中,我们也可以编译和读取png。
似乎opencv框架包含libpng实现。问题是,为什么与编译的lipng源代码链接时没有错误?

最佳答案

链接到库时,您不会导入整个库,而只会导入程序期望但缺少的符号(当然是递归的)。

因此,由于您的应用程序已经提供了libpng符号,因此链接过程甚至在尝试链接opencv时都不会尝试查找它们,因为它一开始就不会丢失它们。

关于c++ - 为什么同时链接libpng和opencv没有冲突?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51165082/

相关文章:

c++ - 从 MFC 应用程序连接到 SQL Server Compact Edition (.sdf)

windows - Gitian Windows编译无法正常工作(时间错误)

c++ - 不完整类型(类)的使用无效

C++使用null部分填充数组

python - OpenCV 错误 : bitwise_and throws error that mask and image are not same size

opencv - cvRodrigues2 中雅可比矩阵的计算

c++ - 使用#define NDEBUG 给我 C++ 中的错误

c++ - 无法在 Netbeans 中使用 WxWIdgets 构建测试应用程序

c++ - 使用 QGraphicsView 子类用 QPainter 画一条线

c++ - 如何在 OpenCV 中将图像调整为特定大小?