(三)error:Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined

运行Helloworld报错

Android NDK: jni/Android.mk: Cannot find module with tag 'cocos2dx' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
jni/Android.mk:19: *** Android NDK: Aborting. . Stop.


Android.mk引用了一个模块,cocos2dx模块,而NDK没有找到它,所以报了这个错,
之前的版本是直接包含cocos2dx模块的Android.mk的,所以不会报错
而这里使用了import,我们也可以使用之前版本的方法来包含它,但貌似import比之前的方法要更好一些
错误信息提示我们,可以通过设置NDK_MODULE_PATH环境变量,这里很有可能设置错误
一般,一个Android.mk包含一个或多个模块,当你要import cocos2dx模块时,
他会在这个路径下% NDK_MODULE_PATH\cocos2dx寻找Android.mk文件
所以我们编辑我们的Builder


添加NDK_MODULE_PATH变量,注意要写两个路径,用分号分开
D:\SDK\cocos2d-2.0-rc0a-x-2.0;D:\SDK\cocos2d-2.0-rc0a-x-2.0\cocos2dx\platform\third_party\android\prebuilt
因为cocos2dx还import了其他几个module,第二个路径制定了第三方的module,设置完就可以进行编译了

-----

end

运行Helloworld报错

Android NDK: jni/Android.mk: Cannot find module with tag 'cocos2dx' in import path
Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ?
Android NDK: The following directories were searched:
Android NDK:
jni/Android.mk:19: *** Android NDK: Aborting. . Stop.


Android.mk引用了一个模块,cocos2dx模块,而NDK没有找到它,所以报了这个错,
之前的版本是直接包含cocos2dx模块的Android.mk的,所以不会报错
而这里使用了import,我们也可以使用之前版本的方法来包含它,但貌似import比之前的方法要更好一些
错误信息提示我们,可以通过设置NDK_MODULE_PATH环境变量,这里很有可能设置错误
一般,一个Android.mk包含一个或多个模块,当你要import cocos2dx模块时,
他会在这个路径下% NDK_MODULE_PATH\cocos2dx寻找Android.mk文件
所以我们编辑我们的Builder


添加NDK_MODULE_PATH变量,注意要写两个路径,用分号分开
D:\SDK\cocos2d-2.0-rc0a-x-2.0;D:\SDK\cocos2d-2.0-rc0a-x-2.0\cocos2dx\platform\third_party\android\prebuilt
因为cocos2dx还import了其他几个module,第二个路径制定了第三方的module,设置完就可以进行编译了

-----

end

Execution failed for task ':NewProject_1:generateJsonModelDebug'. > error when building with ndkBuild using D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\jni\Android.mk: Build command failed. Error while executing process C:\Users\Lenovo\AppData\Local\Android\Sdk\ndk\19.2.5345600\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\jni\Android.mk NDK_APPLICATION_MK=D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\jni\Application.mk APP_ABI=x86 NDK_ALL_ABIS=x86 NDK_DEBUG=1 APP_PLATFORM=android-16 NDK_OUT=D:/Dinging/Cocos_project/NewProject_1/build/jsb-link/frameworks/runtime-src/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\build\intermediates\ndkBuild\debug\lib NDK_TOOLCHAIN_VERSION=clang NDK_MODULE_PATH=C:\ProgramData\cocos\editors\Creator\2.3.4\resources\cocos2d-x;C:\ProgramData\cocos\editors\Creator\2.3.4\resources\cocos2d-x\cocos;C:\ProgramData\cocos\editors\Creator\2.3.4\resources\cocos2d-x\external -j16 NDK_DEBUG=1 APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n} Android NDK: D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\jni\Android.mk: Cannot find module with tag 'CocosDenshion/android' in import path Android NDK: Are you sure your NDK_MODULE_PATH variable is properly defined ? Android NDK: The following directories were searched: Android NDK: process_begin: CreateProcess(NULL, "", ...) failed. D:\Dinging\Cocos_project\NewProject_1\build\jsb-link\frameworks\runtime-src\proj.android-studio\app\jni\Android.mk:16: *** Android NDK: Aborting. . Stop.
最新发布
08-16
<think>好的,用户遇到了Android NDK编译时的错误,提示需要定义NDK_PROJECT_PATH变量。这个问题我之前在文档里看到过,得仔细回忆一下解决方法。 首先,用户可能是在使用ndk-build命令时没有正确设置项目路径。根据引用[1]和[2],错误信息明确指出需要定义NDK_PROJECT_PATH变量。这时候应该检查当前目录是否包含Android.mk和Application.mk文件,如果没有的话,ndk-build可能找不到项目路径。 接下来,用户可能需要手动指定路径。引用[2]给出了一个例子,使用命令ndk-build NDK_PROJECT_PATH=.来指定当前目录。这应该是一个直接的解决办法,尤其是在项目文件存在的情况下。另外,用户可能需要同时指定APP_BUILD_SCRIPT和NDK_APPLICATION_MK,特别是当这些文件不在默认位置时。 另外,环境变量的设置也是一个关键点。引用[3]提到设置ANDROID_NDK_ROOT等环境变量,但用户的问题是关于NDK_PROJECT_PATH的。可能需要检查用户是否在系统环境变量中正确配置了这些路径,或者是否在命令行中临时设置了变量。 还有,引用[4]和[5]提到在cocos2d-x项目中可能不需要设置NDK_MODULE_PATH,但用户的问题可能与普通的NDK项目有关。可能需要确认用户是否在使用特定框架,比如cocos2d-x,因为这会影响配置方式。 用户可能需要分步骤操作:首先检查项目结构,确保必要的mk文件存在;然后在命令行中临时设置变量,或者修改系统环境变量。另外,如果用户使用IDE如Android Studio,可能需要检查项目配置是否正确,或者是否需要更新NDK路径设置。 最后,需要验证解决方案是否有效,建议用户运行命令后查看错误是否消失,并确保所有路径没有拼写错误。如果问题依然存在,可能需要进一步检查NDK版本或项目配置是否有其他问题。</think>关于定义$NDK\_PROJECT\_PATH$变量的解决方法如下: ### 分步解决方案 1. **检查项目结构** 确保项目目录包含: - $Android.mk$(定义模块配置) - $Application.mk$(可选,定义应用级配置) - $jni/$目录(存放C/C++源码) 示例路径结构: ``` /your_project ├── Android.mk ├── Application.mk └── jni/ └── native_code.cpp ``` 2. **临时设置变量(推荐方式)** 在终端执行编译命令时直接指定路径: ```bash ndk-build NDK_PROJECT_PATH=/your/project/path APP_BUILD_SCRIPT=./Android.mk ``` 若$Application.mk$存在,可补充: ```bash NDK_APPLICATION_MK=./Application.mk ``` 此方法优先级最高且无副作用[^2] 3. **永久设置环境变量** - **Windows**: ```bat setx NDK_PROJECT_PATH "D:\your_project_path" ``` - **Linux/macOS**: ```bash echo 'export NDK_PROJECT_PATH="/your/project/path"' >> ~/.bashrc source ~/.bashrc ``` 注意:需同时设置$ANDROID\_NDK\_ROOT$指向NDK安装目录[^3] 4. **IDE集成配置** 在Android Studio的`local.properties`中添加: ```properties ndk.path=/path/to/ndk android.ndkVersion=21.1.6352462 ``` ### 验证配置 ```bash echo $NDK_PROJECT_PATH # Linux/macOS echo %NDK_PROJECT_PATH% # Windows ndk-build clean && ndk-build ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值