在 Microsoft 的 x86 C++ 应用程序中集成 Armadillo Visual Studio

Integration of Armadillo in x86 C++ Application in Microsoft Visual Studio

自上周以来,我一直在使用“Armadillo”C++ 库。 我从 Microsoft Visual Studio 中的默认 64 位 C++ 应用程序开始。对于安装,我遵循了下面 post 中的步骤:

按照这些步骤,对我来说一切正常。

但现在我必须扩展我的 C++ 应用程序并且必须 include/integrate 另一个 .dll。我的问题是,这个 .dll 是一个 32 位 .dll。因此,当我尝试在使用 Armadillo 库的 64 位应用程序中调用它时,我总是会收到“class 未注册”错误。这就是为什么我想将我的整个项目迁移到 x86 应用程序中。但出于某种原因,我无法将犰狳库迁移到这个 x86 应用程序中(按照上面 link 中的说明不再起作用)。在构建程序时,我总是遇到 50 多个“LNK2019”错误。

有谁知道如何解决这个问题并知道谁可以将 Armadillo 集成到 32 位应用程序中?

感谢您的帮助!!

解决了。

对我来说,它可以替换默认从 Armadillo 安装的 x64 位“libopenblas.lib”和“libopenblas.dll”,以及 x86 位“libopenblas.lib”和“libopenblas.dll”,包含在 GitHub 上 OpenBlas 发布页面的“OpenBLAS-0.3.15-x86.zip”下载文件中:

https://github.com/xianyi/OpenBLAS/releases

可能只替换“libopenblas.lib”文件就够了。