[英]runtime error ‘symbol not found in flat namespace’ on macOS 12 but not macOS 10.15, with both Xcode and CMake builds
我在为 C++ 中实现的简单疾病传播 model 构建可执行文件时遇到问题,在 macOS Monterey (v12.6.1) 下使用 cmake。 当我构建可执行文件时,当我尝试运行它时出现以下错误:
dyld[5281]:在平面命名空间(_cblas_caxpy)中找不到符号中止陷阱:6
当我尝试改用 XCode (v14.0.1) 时,问题仍然存在,导致出现相同的错误消息。
有趣的是,我的朋友能够在 macOS v10.15.7 下毫无问题地构建(和运行)可执行文件。
有谁知道这里发生了什么以及如何解决这个问题? C++ 项目公开于 GitHub: https://github.com/AnnaMariaL/DengueSim
任何帮助将不胜感激。
谢谢!
安娜
您的标题/帖子非常令人困惑,但问题不在于 cmake。它与您的cblas library
和/或您的linker 有关。 仔细看看错误:
dyld[5281]: symbol not found in flat namespace (_cblas_caxpy) Abort trap: 6
您的 linker 告诉您它在给定的命名空间中找不到 function(符号)。 这可能是因为您的 linker 不知道在哪里可以找到正确的库,或者您链接的是没有符号的错误版本的库。 其他问题可能与库的构建方式和构建内容(体系结构、编译器等)有关。 这个我们无法回答,因为我们没有足够的信息来确定。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.