0

サンプルのネイティブ プロジェクトを実行しています。Android1.mk と Android2.mk の 2 つの make ファイルがあります。2 つ目は、プロジェクト フォルダーの外に配置されます。私の android studio プロジェクトは次の場所にあります。

H:/Ndk_Dev/デモ

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 に答える