在包含另一个 spdlog 的应用程序中使用 spdlog 进行日志记录时出现分段错误

Segmentation fault when logging using spdlog in an app that includes another spdlog

我有一个使用 spdlog 进行内部日志记录的本机库。

库被编译为共享库,结果 .so 文件随后用于 Android 项目,该项目有自己的 JNI 和本机 c++ 代码,该代码也使用 spdlog

第一次调用 spdlog 时,我们从中体验到 SIGSEGV。经过一些研究,我们发现由于 spdlog 是一个仅包含头文件的库,因此在以这种方式使用它时可能会出现问题,因此我们改为将其用作本机库中的静态库。

这似乎解决了问题,但现在我们在第一次从应用程序的本机代码调用 spdlog 时得到了 SIGSEGV

以这种方式使用 spdlog 是否有任何限制或问题,特别是在 Android 项目中? 关于调试问题有什么建议吗?

如果有任何代码有帮助,请告诉我需要什么,我会更新问题

编辑

此外,值得注意的是,只有当本机库以 Release 模式构建时才会发生。在调试中,一切都按预期工作

原来解决方案只是升级到更新版本的 spdlog