如何让JHC与android ndk合作?

2024-03-25

JHC 是一个 Haskell 编译器,它可移植生成 C 代码,然后调用编译器后端来生成可执行文件。

我需要转储 JHC 运行时系统的头文件和库,以便 android ndk 可以使用它来编译生成的 C 代码。

或者,我需要弄清楚如何将 android API 链接到 JHC 中。

基本上,如何将 JHC 插入 android ndk 后端?

编辑:我使用 JHC 可以使用的 ndk 构建工具之一“build/tools/make-standalone-toolchain.sh”制作了一个独立编译器。现在我需要找出一种方法让 JHC 将我的程序编译成共享对象库,以及如何让 JHC 不需要“main”函数。

Edit2:我有以下targets.ini 和编译脚本。奇怪的是,共享库无法加载。

[android]
cc=arm-linux-androideabi-gcc
cflags+= -shared -fPIC -rdynamic -Wno-all
gc=static
executable_extension=.so
merge=mle32

and

#!/bin/sh

jhc --cross -mandroid \
 --main=Main.android_main \
 hs/Main.hs -o libs/armeabi/libnative-activity &&   
ant debug &&
ant debug install

我解决了这个问题。 我没有将函数调用“app_dummy()”放在“android_main”函数的开头。

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

如何让JHC与android ndk合作? 的相关文章

  • 用于监听拖动手势的后台应用程序

    我需要注册一个广播接收器 它会告诉我任何类型的信息Drag整个系统的事件 我的应用程序将在后台运行并执行任何任务 如果有 Drag即使任何其他应用程序在前台运行 事件也会发生 是否可以 知道我该怎么做吗 Updates 不要以为我会制作键盘
  • 调用“DisplayManagerGlobal.getDisplayInfo()”会导致应用程序中的应用程序无响应 (ANR)

    显然 应用程序中的某些内容从不同线程 主线程和绑定器线程 调用该方法 这会导致内部 ANR 它经常发生 我不知道它发生在哪里 因为我无法在模拟器或我拥有的测试设备上重现它 该应用程序的作用 它是一个应用程序储物柜应用程序 它在应用程序覆盖层
  • android 表格内的可聚焦行

    我在 xml 中有一个 ScrollView 其中包括一个 TableLayout 我的问题是 每次我单击它时是否可以有一个可聚焦的行 这是我的 xml 代码
  • 模拟器的窗口比手机屏幕太大

    我做了一个小例子来测试我的Android环境 当我在AVD上启动执行时 它看起来太大了 就好像它是平板电脑屏幕一样 如何调整大小使其看起来像手机屏幕 Android Studio 2 2更新后就没有了Emulator Tab in Edit
  • Android 应用程序 Azure 依赖项 gradle 构建时出错

    我在 Android Studio 2 3 3 的 Gradle 同步中收到以下错误 错误 模块 com microsoft azure azure mobile android 3 3 0 依赖于一个或多个 Android 库 但它是一个
  • Android 自定义对话框中的图标

    有没有一种方法可以在不使用 AlertDialog 方法的情况下在自定义对话框上设置图标 对话框有标题 但缺少漂亮的分隔线和设置图标的功能 但肯定有一种方法可以在不使用 AlertDialog 的情况下获得两者 您可以使用以下代码添加图标
  • Haskell 中的异构多态性(正确方法)

    让一个模块来抽象Area操作 错误的定义 class Area someShapeType where area someShapeType gt Float module utilities sumAreas Area someShape
  • com.google.android.gms.games.GamesClient 无法解析

    我正在尝试使用 google play 游戏服务开发实时多人游戏 并下载了示例 ButtonClicker2000 但 Eclipse ADK 一直抱怨 com google android gms games GamesClient 无法
  • 动态元素 ID 到 setId(int) - Android

    我看到了语法定义setId int and findViewByID int 但我们如何使用findViewById R id row1 我尝试使用这个 Object1 setId Integer parseInt repeat 它没有显示
  • 使用 Android Intent 发送基于 HTML 的电子邮件正文

    我需要使用 android Intent extra 将基于 HTML 的内容发送到电子邮件应用程序 它接受一些标签 例如 br 但它没有显示任何锚链接或 h1 其显示像简单的文本 EDITED I have tried with gmai
  • 在 Android 应用程序中编辑/添加 IPTC 元数据

    我看过许多其他类似的问题 但似乎没有一个有准确的答案 我正在开发一个可处理大量图像的 Android 应用程序 我希望通过编辑 IPTC 关键字标签 或其他适当标签 的值来向图像添加信息 我在用元数据提取器 http drewnoakes
  • Android 2.3 或更低版本上通知中的可点击自定义视图

    我创建了一个自定义通知布局 其中有一个可单击的按钮 到目前为止 在 Android 3 API 级别 11 或更高版本上可以正常工作 但在 Android 2 3 即ContentIntent来自Notification总是覆盖我的布局并且
  • 让 GHC 生成“带进位加法 (ADC)”指令

    下面的代码将表示 192 位数字的两个未装箱字三元组添加到新的未装箱字三元组中 并且还返回任何溢出 LANGUAGE MagicHash LANGUAGE UnboxedTuples import GHC Prim plusWord2 Wo
  • 如何在 Android 中隐藏列表视图中的项目

    我知道 这个问题以前曾被问过 但我还没有看到有效的答案 有什么办法可以隐藏一些项目ListView不改变源数据 我尝试将项目视图的可见性设置为消失 它不会再显示 但为此项目保留的位置仍然存在 我还设置了 android dividerHei
  • 在 SDK 中找不到文件夹“tools”

    我在做安卓开发使用 Eclipse 我已经下载了所有必需的软件 但遇到了与中讨论的相同的问题 无法在 Eclipse 中设置 Android Target https stackoverflow com questions 6384328
  • 如何将视频转换为base64数据

    我有一个应用程序 可以从相机或图库中获取视频并将其转换为 Base64 数据 并将该数据发送到服务器 但问题是每当我转换 Base64 数据时 videodata 变量中的数据都不是正确的 为此我使用了下面的代码 FileInputStre
  • 在主表单之前显示登录表单

    我在表单之间导航时遇到问题 我使用 Delphi XE5 创建了一个 Android Firemonkey 移动应用程序 我目前有一个登录表单和主表单 现在我想要有关如何处理登录表单以显示在主表单之前的建议 在 项目选项 中的表单下 选择要
  • 如何在 Android 上从后台线程显示 Toast?

    我怎样才能显示Toast http developer android com guide topics ui notifiers toasts html来自线程的消息 您可以通过调用Activity s runOnUiThread您线程中
  • 如何在显示项目之前为 RecyclerView 高度设置动画

    我怎样才能 或者我应该说什么时候可以在显示项目之前对 recyclerView 高度进行动画处理 我可以在 onMeasure 中获得最终高度 但项目总是出现太快并且动画不起作用 关于如何让这个动画发挥作用有什么想法吗 None
  • Android 6.0.1 无法以编程方式启用 wifi 热点

    当我尝试通过以下代码启用 wifi 网络共享时 它会抛出异常 com java lang reflect Method invoke Native Method 处的 java lang reflect InitationTargetExc

随机推荐

  • 如何从IDEA+Gradle调试AppEngine本地服务器?

    我正在学习 Udacity App Engine 课程 但作为修补者 我正在使用 Gradle 和 IDEA 开源版本 我已经使用以下 build gradle 文件成功设置了项目 buildscript repositories mave
  • IntelliJ Idea 和 JNI:确保 DLL 位于需要执行的位置

    我正在项目中使用第三方库 它包括两个 dll 文件和一个 jar 文件以提供 JNI 包装器 可以使用以下命令调用第三方供应商包含在 jar文件中的测试项目 java cp product jar com company samples p
  • Firebase google-services.json 具有多个项目?

    对于我们的应用程序 我使用两个不同的 firebase 项目 Live 包含实时 iOS 和 Android 应用程序 测试 包含我们所有的 iOS 和 Android 测试应用程序 据我所知 google services json An
  • 如何使用 Papa Parse 读取本地文件?

    如何使用 Papa Parse 读取本地文件 我本地有一个文件名为challanges csv 但经过多次尝试后我无法用 Papa Parse 解析它 var data Papa parse challanges csv header tr
  • Mapbox-gl 键入不允许 accessToken 分配

    我正在使用带有 TypeScript 的 mapbox gl 库 并且我已经安装了其社区来源的类型定义 types mapbox gl 当我尝试导入并设置 accessToken 以使用该库时 我的 TypeScript 编译器抛出此错误
  • 如何在 R Shiny 中添加“返回页面顶部”按钮?

    这是其他 Web 应用程序中非常常见的功能 但在 R Shiny 中 如何添加一个按钮 让用户在单击时返回页面顶部 除此之外 是否可以设置用户视图向上或向下移动的距离 非常感谢 我搜索了一段时间 但找不到任何关于此的帖子 使用 gotop
  • 如何设置 Atom 的“styles.less”文件来突出显示 Python 中的函数和方法调用?

    我想让它像 Sublime Text 中那样突出显示 我按照建议尝试了here https discuss atom io t how to change the color of python function calls 22660 3
  • 为什么 TypeScript 在实现泛型接口时无法推断函数参数的类型?

    我正在 Visual Studio 2015 中编写 TypeScript 安装了 2 3 3 0 版本的语言服务扩展 我有noImplicitAny参数设置为true在我的项目中tsconfig json 给出这个简单的示例代码 inte
  • 在 AJAX 调用中使用 success() 或complete()

    我想理解下面的 AJAX 调用complete method 当我更换时complete with success 我得到一个空的响应文本就像 AJAX 一样error method 另一方面 当我离开complete 方法就在那里 一切都
  • 配置 AWS Elastic Beanstalk 时区以进行 Auto Scaling

    我部署了一个单实例服务器AWS 弹性豆茎需要时区配置 我将时区更改为使用ssh登录EC2环境 并使用下面列出的linux命令更新它 sudo rm etc localtime sudo ln sf usr share zoneinfo Eu
  • BertTokenizer.from_pretrained 错误并显示“连接错误”

    我正在尝试从 Huggingface 下载 BERT 的分词器 我正在执行 tokenizer BertTokenizer from pretrained bert base uncased Error
  • Python 字典键中的空格

    我知道 Python 字典键中可以有空格 但这被认为是糟糕的编程吗 我在 PEP 中找不到任何与此相关的内容 编辑以澄清 在我正在做的一个项目中 我正在研究解析 Apache 的记分板输出的东西mod status 请参阅下面的示例输出 我
  • 在 ASP.NET MVC3 中正确使用 TempData?

    我有一个 ASP NET MVC3 应用程序 其中我的操作生成了一个 id 列表 我希望将其提供给后续 AJAX 请求 这样我就可以在后台运行一个很长的进程并对其进行轮询 id 列表是这个长时间运行的进程的必要输入 我不想将它们作为参数传递
  • python正则表达式中匹配unicode字符

    我已经阅读了 Stackoverflow 上的其他问题 但仍然没有更进一步 抱歉 如果这个问题已经得到解答 但我没有得到任何建议可以工作 gt gt gt import re gt gt gt m re match r by tag P
  • 具有 VCL 样式的默认按钮

    我对 Default True 的 TButtons 的样式感到困惑 问题是 至少对于某些样式 例如 Luna 最近聚焦的按钮突出显示为橙色 这与默认按钮使用的样式相同 因此 我担心用户可能会对哪个按钮是默认按钮感到困惑 或者至少会认为两个
  • 多次渲染一个组件 React.js

    这是一个简单计数器的代码 但是 当我渲染视图时 我没有得到任何输出 请告诉我代码有什么问题 按下按钮 计数器就会递增并呈现在屏幕上 var Title React createClass getInitialState function r
  • Java utils 类、静态方法与注入 utils 类

    你们如何创建 utils 类 有标准的方法吗 就像标题所说 你可以有这样的东西 public class Utils public static method1 public static method2 并通过调用来使用它Utils me
  • “未定义不是对象” this.state 未绑定

    我的反应本机组件 我通过创建React createClass 似乎没有约束力this关键字正确 导致我无法访问this state 这是我得到的错误 代码如下 我没有看到与网站上的示例有任何本质上的不同 所以我无法弄清楚我做错了什么 我怎
  • 如何在两列上指定 OrderBy 子句

    我们希望在 Seam EntityQuery 接口以及 JPA 模型中对 2 列进行排序 我们如何做到这一点 Entity public class A OrderBy should this be hardcoded here is it
  • 如何让JHC与android ndk合作?

    JHC 是一个 Haskell 编译器 它可移植生成 C 代码 然后调用编译器后端来生成可执行文件 我需要转储 JHC 运行时系统的头文件和库 以便 android ndk 可以使用它来编译生成的 C 代码 或者 我需要弄清楚如何将 and