0

我正在做一个示例本机项目。我有两个 make 文件,一个是 Android1.mk,另一个是 Android2.mk。第二个放在项目文件夹之外。我的android studio项目位于

H:/Ndk_Dev/Demo

Android1.mk 位于

H:/Ndk_Dev/Demo/app/src/main/jni

Android2.mk 位于

H:/Ndk_Dev/externalJni

Android1.mk 包含。

LOCAL_PATH := $(call my-dir)
MY_ROOT_PATH := $(abspath $(LOCAL_PATH)/../../../../../)
.......
.......
.......
include $(MY_ROOT_PATH)/externalJni/Android2.mk

但是在编译时,我得到的路径是

LOCAL_PATH    -------> H:/Ndk_Dev/Demo/app/src/main/jni
MY_ROOT_PATH  -------> H:/Ndk_Dev/Demo/app/src/main/H:/Ndk_Dev

所以它指向一个无效的 Android2.mk 路径,它是

H:/Ndk_Dev/Demo/app/src/main/H:/Ndk_Dev/externalJni/Android2.mk

据我了解MY_ROOT_PATH应该是H:/Ndk_Dev

有没有人知道在 Windows 上调用 $(abspath) 的任何问题。

4

1 回答 1

0

您应该按以下方式调用

MY_ROOT_PATH := $(abspath ../../../../../)

这个对我有用。

于 2017-07-04T11:29:54.797 回答