我的
Xcode目标链接到hdf5库(使用链接二进制与库构建阶段).使用MacPorts安装libhdf5,因此/ opt / local / lib包含动态(.dylib)和静态(.a)版本的库.
从构建的文本输出显示,正如预期的那样,在构建的链接步骤中有一个-lhdf5.然而,gcc似乎将动态链接库放在静态上.有没有办法强制gcc(通过编译器开关或通过Xcode)与libhdf5.a静态链接?
我找到的唯一解决方案是将libhdf5.a复制到项目(或其他)目录,并链接到该副本,从而避免在同一位置使用动态和静态版本.
解决方法
对于您对Eduard Wirch的回答的回应:您也可以仅为这个库控制静态链接,如果将-lhdf5替换为-l / full / path / to / libhdf5.a