gpt4 book ai didi

c++ - 链接 jsoncpp (libjson)

转载 作者:太空宇宙 更新时间:2023-11-04 14:05:18 26 4
gpt4 key购买 nike

我正在尝试使用 cmake 将 jsoncpp ( lib_json ) 与 c++ 项目链接起来。它在一台计算机上运行良好,但在另一台计算机上(具有几乎相同的配置)我在执行我的应用程序时遇到错误:

dyld: Library not loaded: buildscons/linux-gcc-4.2.1/src/lib_json/libjson_linux-gcc-4.2.1_libmt.dylib

Referenced from: path to executable

Reason: image not found

知道是什么原因造成的吗?我什至不明白为什么它会尝试查看 @buildscons/linux-gcc-4.2.1/src/lib_json/libjson_linux-gcc-4.2.1_libmt.dylib 因为我将 jsoncpp 放入 usr/lib/并将名称更改为 libjsoncpp并 cmake 找到正确的路径/库。

我还在两台计算机上以完全相同的方式构建了 jsoncpp。

最佳答案

我遇到了同样的问题。如果您运行 tool -L libjson_linux-gcc-4.2.1_libmt.dylib,您会看到您的 libjson... 的一些奇怪的相对地址。我想如果你复制这个目录结构它会起作用,但这是一个糟糕的解决方案。

我所做的是使用 .a (libjson_linux-gcc-4.2.1_libmt.a) 并将其静态链接到我的二进制文件。在 XCode 中 Build Settings -> Linking -> Other Linker Flags 我添加了绝对路径到我的 .a .对我来说是 /Users/martin/Downloads/jsoncpp-src-0.5.0/libs/linux-gcc-4.2.1/libjson_linux-gcc-4.2.1_libmt.a 就这样。

当然,我不知道你的用例,也许你真的需要动态链接它。

关于c++ - 链接 jsoncpp (libjson),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17276853/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com