将 Eigen 库添加到 Android NDK

2023-11-24

我需要在我的 Android Studio 项目中包含 Eigen 库来执行一些线性代数运算并使用我为桌面开发的一些 C++ 代码。我一直在寻找有关此主题的信息,但没有太多,而且我是 Android NDK 的新手。 Eigen 库不需要编译,所以我认为这很容易,但我错过了一些东西。我尝试将 Eigen 文件夹(其中包含所有包含内容)复制到 NDK 文件夹(..\Android\Sdk\ndk-bundle\sysroot\usr\include)中,其中还有其他外部库(例如 GLES),但是Android Studio 检测不到它。我该怎么做??预先感谢您,我真的需要这个。

Edit 1: 正如你在这里看到的,包含了Eigen lib,但是当我编译项目时出现很多错误,我不知道为什么。有任何想法吗?


最后我达到了我的目标,我正在 Android 中使用 Eigen。如果您正在尝试在 Android 中使用 Eigen 库,我希望这对您有所帮助:

  1. 从官方网站下载 Eigen 库。
  2. Copy Eigen folder inside the zip you have downloaded in which are all the headers (.h files) of the library and paste it on one folder of your choice in the project. For example, i did it in:

    ../app/src/main/cpp

  3. 编辑 CMakeLists.txt,添加此行和 Eigen 文件夹的路径 在你的项目中:include_directories(src/main/cpp/Eigen)
  4. 在真实设备(不在模拟器上运行)中启动应用程序以加载 Eigen 里面的头文件。
  5. 在您的 cpp 文件中包含 Eigen 标头并正常使用它们。例如:

    #include "Eigen/Dense" void multiply2Matrices(){ Eigen::MatrixXd M(2,2); Eigen::MatrixXd V(2,2); for (int i = 0; i<=1; i++){ for (int j = 0; j<=1; j++){ M(i,j) = 1; V(i,j) = 2; } } Eigen::MatrixXd Result = M*V; }

就我而言,我不需要编译任何东西,只需使用官方 Eigen 库的头文件

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Eigen 库添加到 Android NDK 的相关文章

  • Android - 如何更改 TimePicker 中的文本颜色?

    我正在使用 TimePicker 到 LinearLayout 中 背景颜色 黑色 但是 我看不到 TimePicker 中的数字 并且我需要在布局中将背景颜色设置为黑色 如何更改 TimePicker 中的 textColor 我已经尝试
  • ASP MVC:服务应该返回 IQueryable 的吗?

    你怎么认为 你的 DAO 应该返回一个 IQueryable 以便在你的控制器中使用它吗 不 您的控制器根本不应该处理任何复杂的逻辑 保持苗条身材 模型 而不是 DAO 应该将控制器返回给视图所需的所有内容 我认为在控制器类中看到查询 甚至
  • 如何从网站下载 .EXE 文件?

    我正在编写一个应用程序 需要从网站下载 exe 文件 我正在使用 Visual Studio Express 2008 我正在使用以下代码 private void button1 Click object sender EventArgs
  • C 语言中 =+(等于加)是什么意思?

    我碰到 与标准相反 今天在一些 C 代码中 我不太确定这里发生了什么 我在文档中也找不到它 In ancientC 版本 相当于 它的残余物与最早的恐龙骨头一起被发现 例如 B 引入了广义赋值运算符 使用x y to add y to x
  • Qt 创建布局并动态添加小部件到布局

    我正在尝试在 MainWindow 类中动态创建布局 我有四个框架 它们是用网格布局对象放置的 每个框架都包含一个自定义的 ClockWidget 我希望 ClockWidget 对象在调整主窗口大小时相应地调整大小 因此我需要将它们添加到
  • 将数据打印到文件

    我已经超载了 lt lt 运算符 使其写入文件并写入控制台 我已经为同一个函数创建了 8 个线程 并且我想输出 hello hi 如果我在无限循环中运行这个线程例程 文件中的o p是 hello hi hello hi hello hi e
  • 在非活动联合成员上使用“std::addressof”是否定义明确[重复]

    这个问题在这里已经有答案了 下面的代码是尝试实现constexpr的版本offsetof在 C 11 中 它可以在 gcc 7 2 0 和 clang 5 0 0 中编译 这取决于申请std addressof工会非活跃成员的成员 这是明确
  • 生产代码中的 LRU 实现

    我有一些 C 代码 需要使用 LRU 技术实现缓存替换 目前我知道两种实现LRU缓存替换的方法 每次访问缓存数据时使用时间戳 最后比较替换时的时间戳 使用缓存项的堆栈 如果最近访问过它们 则将它们移动到顶部 因此最后底部将包含 LRU 候选
  • 如何在c#中的内部类中访问外部类的变量[重复]

    这个问题在这里已经有答案了 我有两个类 我需要声明两个类共有的变量 如果是嵌套类 我需要访问内部类中的外部类变量 请给我一个更好的方法来在 C 中做到这一点 示例代码 Class A int a Class B Need to access
  • 将构建日期放入“关于”框中

    我有一个带有 关于 框的 C WinForms 应用程序 我使用以下方法将版本号放入 关于 框中 FileVersionInfo GetVersionInfo Assembly GetExecutingAssembly Location F
  • 在 C 中使用 GNU automake 中的解析器

    我是 GNU autotools 的新手 在我的项目中使用了 lex 和 yacc 解析器 将它们作为 makefile am 中的源代码会产生以下错误 配置 in AC CHECK PROGS YACC bison yacc none i
  • Android - 9 补丁

    我正在尝试使用 9 块图片创建一个新的微调器背景 我尝试了很多方法来获得完美的图像 但都失败了 s Here is my 9 patch 当我用Draw 9 patch模拟时 内容看起来不错 但是带有箭头的部分没有显示 或者当它显示时 这部
  • 当我“绘制”线条时,如何将点平均分配到 LineRenderer 的宽度曲线?

    我正在使用线条渲染器创建一个 绘图 应用程序 现在我尝试使用线条渲染器上的宽度曲线启用笔压 问题在于 AnimationCurve 的 时间 值 水平轴 从 0 标准化为 1 因此我不能在每次添加位置时都在其末尾添加一个值 除非有一个我不知
  • 尚未处理时调用 Form 的 Invoke 时出现 ObjectDisposeException

    我们得到一个ObjectDisposedException从一个电话到Invoke在尚未处理的表格上 这是一些演示该问题的示例代码 public partial class Form2 Form void Form2 Load object
  • 结构体指针的动态数组

    我必须使用以下代码块来完成学校作业 严格不进行任何修改 typedef struct char firstName char lastName int id float mark pStudentRecord pStudentRecord
  • 转到定义:“无法导航到插入符号下的符号。”

    这个问题的答案是社区努力 help privileges edit community wiki 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我今天突然开始在我的项目中遇到一个问题 单击 转到定义 会出现一个奇怪的错误 无法导航到
  • 实例化 Microsoft.Office.Interop.Excel.Application 对象时出现错误:800700c1

    实例化 Microsoft Office Interop Excel Application 以从 winforms 应用程序生成 Excel 时 出现以下错误 这之前是有效的 但突然间它停止工作了 尽管代码和 Excel 版本没有变化 我
  • 使用 Crypto++ 获取 ECDSA 签名

    我必须使用 Crypto 在变量中获取 ECDSA 签名 我在启动 SignMessage 后尝试获取它 但签名为空 我怎样才能得到它 你看过 Crypto wiki 吗 上面有很多东西椭圆曲线数字签名算法 http www cryptop
  • Android:如何检测手机设置中的语言已更改

    我如何检测我的手机语言是否已更改 例如 Facebook 应用程序将向我们宣布 please wait we preparing your language i used myString Locale getDefault getDisp
  • Android 和 Java 中绘制椭圆的区别

    在Java中由于某种原因Ellipse2D Double使用参数 height width x y 当我创建一个RectF在Android中参数是 left top right bottom 所以我对适应差异有点困惑 如果在 Java 中创

随机推荐

  • flutter - 应用程序栏在灵活空间中滚动并显示重叠内容

    我正在尝试使用 flutter 在灵活空间中重新创建应用程序栏滚动和重叠内容 该行为如下所示 http karthikraj net 2016 12 24 scrolling behavior for appbars in android
  • 下载 MacPorts 依赖项而不安装

    默认的 MacPorts 安装会下载每个依赖项 构建并安装它 然后下载 构建并安装下一个依赖项 依此类推 这意味着在整个安装过程中需要持续的网络连接 在我的配置中 持续的网络连接是不可行的 这意味着安装大依赖包可能需要很长时间 如何在开始时
  • 如何在列表框上实现增量搜索?

    我想对绑定到列表框的键值对列表实现增量搜索 如果我有三个值 AAB AAC AAD 那么用户应该能够在可用列表框中选择一个项目并键入 AAC 并且该项目应该突出显示并处于焦点位置 它也应该以增量方式进行 处理这个问题的最佳方法是什么 向 K
  • Grails Spring Core 安全插件 - 无法解析类

    我正在使用 Grails 2 2 2 并且已经通过在 BuildConfig groovy 文件中添加以下行来安装 spring security core 2 0 RC2 Under the plugins compile spring
  • jQuery 在带有 rowspan 的表中选择可视列

    我见过一些类似的问题 但没有回答这个具体问题 考虑下表 table border 1px tr td one td td two td td three td td four td td five td tr tr td two td td
  • 使用 RestSharp 发布数据时序列化对象

    我最近开始使用 RestSharp 来使用使用 XML 的 REST 服务 它使得将 XML 对象反序列化为自定义对象集合变得非常简单 但我的问题是最好的方法是什么重新序列化什么时候发回服务 我应该使用 LINQ to XML 重新序列化吗
  • 如何以编程方式将 mp3 转换为 itunes 可播放的 aac/m4a 文件?

    我一直在寻找一种以编程方式或通过命令行将 mp3 转换为 aac 的方法 但没有成功 理想情况下 我有一段代码可以从我的 Rails 应用程序中调用 将 mp3 转换为 aac 我安装了 ffmpeg 和 libfaac 并能够使用以下命令
  • 大O符号之和[重复]

    这个问题在这里已经有答案了 可能的重复 将不同的例程组合在一起时的大O 什么是O n O log n 减少到 我的猜测是O n 但无法给出严格的推理 我明白O n O 1 应该减少到O n since O 1 只是一个常数 好吧 自从O f
  • 使用 ClosedXML 将 Gridview 导出到 Excel,而不发出警告:您尝试打开的文件格式不同

    我正在开发 ASP NET 4 5 Webform 并且有一个 Gridview 具有自定义 TemplateField 并从 sqlDataSource 获取数据 我有这个事件将 gridview 内容导出到 Excel 工作表 它的工作
  • 如何从 C# 中的一组图像创建 H.264 编码的电影?

    我今天做了很多搜索 C 库 这将允许我创建 H 264 编码的视频文件 有谁知道是否存在这样的库或第三方组件 Use ffmpeg 我建议直接运行 ffmpeg 进程 如本示例所示 http jasonjano wordpress com
  • 递归释放 C 结构体

    我有一个结构 仅包含指向我分配的内存的指针 有没有一种方法可以递归地释放每个作为指针的元素 而不是对每个元素调用 free 例如 假设我有这样的布局 typedef struct vertex typedef struct normal t
  • 如何将 SQL 数据库嵌入/附加到 Visual C# 中?

    这是我第一次使用 SQL 这可能是一个愚蠢的问题 但我做了一些研究 但我认为我没有找到我想要的东西 我想要的是一种创建将在我的 C 程序中使用的私有 SQL 数据库的方法 我已经在 SQL Server Express 中创建了一个数据库
  • C++中虚表的结构是怎样的?

    例如 我有两个 接口 和类类型 class IPlugin public virtual void Load void 0 virtual void Free void 0 class IFoo public virtual void Fo
  • 在哪里下载 your_client_secret_File.json 文件

    我正在使用 YouTube API 但首先 我需要凭证文件 your client secret File json 通过遵循本教程https developers google com youtube analytics referenc
  • Clang 中 __int128_t 的错误?

    这段小代码可以使用 GCC 和 Clang 进行编译 但会给出不同的结果 include
  • Python Twisted 中的内存泄漏:它在哪里?

    我有一个负载下的 Twisted 服务器 当服务器处于负载状态时 内存使用量会增加 并且永远不会被回收 即使没有更多的客户端 下次进入高负载时 内存使用量会再次增加 这是当时情况的快照 RSS 内存为 400 MB 通常最大客户端数应为 2
  • HTML5 验证中的空标题警告

    我尝试验证我的 HTML 代码 但发现了此警告 空标题 See here 显然标题不为空 的内容 h3 h3 在 WordPress 中由以下方式生成the title 功能 所以 我不明白为什么会发生这种情况 有人可以解释一下问题是什么吗
  • 使用接口进行 IList 和 List 转换

    我大致了解接口 继承和多态性 但有一件事让我感到困惑 在这个例子中 Cat实施IAnimal而且当然List实施IList IList
  • 如何在 html 游戏中保存进度

    我想知道如何保存玩家在我正在制作的游戏中取得的进度 我可以通过 cookies 来做到这一点吗 或者我还可以如何将其保存到玩家的计算机上 感谢您的所有帮助 使用 Javascript 在本地保存几乎有两种选择 它们是cookies and
  • 将 Eigen 库添加到 Android NDK

    我需要在我的 Android Studio 项目中包含 Eigen 库来执行一些线性代数运算并使用我为桌面开发的一些 C 代码 我一直在寻找有关此主题的信息 但没有太多 而且我是 Android NDK 的新手 Eigen 库不需要编译 所