-1

我知道之前有人问过这个问题,但我尝试了所有现有的解决方案,但没有一个解决了这个问题。

我正在尝试创建一个简单的 hello world 本机应用程序(二进制而不是 apk),但是当我尝试使用“ndk-build”进行编译时,我不断收到此错误消息

安卓.mk

LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := main.out
LOCAL_SRC_FILES := main.cpp
include $(BUILD_EXECUTABLE)

应用程序.mk

APP_ABI := x86
APP_PLATFORM := android-25
APP_STL := stlport_static
APP_BUILD_SCRIPT := Android.mk

主文件

#include <iostream.h>

main()
{
    std::cout << "Hello World!";
    return 0;
}

这是我的文件夹的结构

.
└── jni
    ├── Android.mk
    ├── Application.mk
    └── main.cpp
4

1 回答 1

0

在这种情况下APP_BUILD_SCRIPT,不需要设置,因为您似乎使用的是默认名称和位置。

但是,假设您Android.mk的名字是foo.mk. 问题APP_BUILD_SCRIPT“构建系统总是将非绝对路径解释为相对于 NDK 的顶级目录”

因此,您可能想要指定一个绝对路径,但最好不要指定一个完全硬编码的路径,因为如果您在计算机上移动东西或尝试将项目移动到另一台计算机,这会使事情变得复杂。

您可以通过以下方式解决此问题:

MY_APP_DIR := $(call my-dir)
APP_BUILD_SCRIPT := $(MY_APP_DIR)/foo.mk
于 2017-01-18T08:46:31.853 回答