【发布时间】:2021-09-09 13:40:47
【问题描述】:
我在 macOS 11.4 (Big Sur) 上使用 Qt Creator 5.0 构建了一个 C++ 应用程序。构建系统是 CMake。应用程序非常简单;它只使用标准库和 OpenCV。我可以在终端上正常运行它,但是当我尝试在 Qt Creator 中运行它时,我收到一条奇怪的运行时错误消息,抱怨缺少 libsqlite。
15:28:37: Starting /Users/guel/projects/OpenCVSample/bin/umake/clang-12.0/x86_64/release/OpenCVSample ...
dyld: Library not loaded: /usr/lib/libsqlite3.dylib
Referenced from: /System/Library/Frameworks/CFNetwork.framework/Versions/A/CFNetwork
Reason: Incompatible library version: CFNetwork requires version 9.0.0 or later, but libsqlite3.dylib provides version 0.0.0
15:28:37: The program has unexpectedly finished.
15:28:37: The process was ended forcefully.
15:28:37: /Users/guel/projects/OpenCVSample/bin/umake/clang-12.0/x86_64/release/OpenCVSample crashed.
我的应用程序实际上与 CFNetwork 或 libsqlite 无关。这个错误的原因可能是什么?
【问题讨论】:
-
这似乎是您的 macOS 的问题。 CFNetwork 是一个系统库。您可以尝试更新到 11.5.2,看看它是否能神奇地解决这个问题。
-
更新到 11.5.2 并没有解决问题。我意识到路径
/usr/lib/libsqlite3.dylib不存在;实际上,当我执行find / -name "libsqlite3.dylib"时,我得到了不同的路径:/usr/local/Cellar/sqlite/3.36.0/lib/libsqlite3.dylib以及不同 conda 环境下 Miniconda 中的其他一些 libsqlite.dylib。
标签: c++ macos qt-creator