为Pandaboard Linaro Linux交叉编译Hello World

时间:2013-12-01 01:57:05

标签: cross-compiling pandaboard linaro

我正在尝试为运行Linaro Android Linux的Pandaboard交叉编译一个简单的应用程序,v13.04。

我在Ubuntu 12.04虚拟机中使用Linaro工具链。我可以成功修改和交叉编译内核,并编译工作的驱动程序模块,但我无法弄清楚从哪里获取库等。我需要构建用户空间应用程序(不是Android,我想要在控制台中运行的东西) )。

任何提示和/或示例?很抱歉请求帮助而不是特定问题,但我拼命想创建一个命令行工具来测试我的驱动程序。我的运行时间非常有限,已经在网上搜索了几个小时。最后,我想交叉编译HIDAPI库,但只是让用户空间应用程序工作将是一个很好的开始!

我没有(或者不知道在哪里找到)用户空间程序的stdio / stdlib库。我希望的是一个简单的命令行(或makefile)示例,它允许我在我的Ubuntu系统上交叉编译并创建一个可执行文件,它将在Pandaboard Linaro Android版本(13.04)的Linux shell中运行。

再一次,我意识到这是非常基本的,但是我无法做到,并且会很高兴和例子来启动我。

谢谢, 利

1 个答案:

答案 0 :(得分:1)

要为Android构建控制台应用程序,您需要NDK。 Android有其特殊的libc版本bionic,这就是你需要NDK的原因。

下载并解压缩NDK后,您会在那里找到 samples 文件夹。看看 hello-jni 示例并创建自己的示例。下面是 Android.mk 文件的示例:

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE    := hello-jni
LOCAL_SRC_FILES := hello-jni.c

include $(BUILD_SHARED_LIBRARY)