Android NDK/JNI:“没有规则可以创建目标”编译我的混合 iOS/Android 项目时出错

发布于 2025-01-03 05:22:07 字数 572 浏览 5 评论 0原文

我正在尝试在完成“make clean”(执行 makefile 的内容)后编译我的 iOS/Android 混合项目(使用 build_native.sh)。

我实际上遵循了本教程中描述的步骤: http://gameit.ro/2012/01/creating-an-iphone-and-android-cocos2d-x-hybrid-project-updated/#comment-635

但我明白了尝试编译时出现以下错误:

**没有规则来制作目标jni/../../libs/cocos2dx/platform/CCFileUtils.cpp',需要通过 obj/local/armeabi/objs-debug/cocos2d/platform/CCFileUtils.o'。停止。*

有人知道如何解决这个问题吗?

谢谢 !

I am trying to compile my iOS/Android hybrid project (using build_native.sh) after having done a "make clean" (executing the content of a makefile).

I actually followed the steps described in this tutorial: http://gameit.ro/2012/01/creating-an-iphone-and-android-cocos2d-x-hybrid-project-updated/#comment-635

But I get the following error when trying to compile:

** No rule to make target jni/../../libs/cocos2dx/platform/CCFileUtils.cpp', needed byobj/local/armeabi/objs-debug/cocos2d/platform/CCFileUtils.o'. Stop.*

Anybody knows how to dolve this issue?

Thanks !

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

雅心素梦 2025-01-10 05:22:07

找到答案了!我没有正确复制“Platform”文件夹,因此 CCFileUtils 丢失。

Found the answer! I didn't copy properly the "Platform" folder and consequently, CCFileUtils was missing.

疑心病 2025-01-10 05:22:07

Android.mk文件如下:

LOCAL_PATH: = $ (call my-dir)
include $ (CLEAR_VARS)

LOCAL_MODULE: = libvlcjni

LOCAL_SRC_FILES: = libvlcjni.c aout.c thumbnailer.c condattr.c pthread-pthread-pthread-once.c rwlocks.c eventfd.c sem.c
LOCAL_SRC_FILES + = pipe2.c
LOCAL_SRC_FILES + = wchar / wcpcpy.c
LOCAL_SRC_FILES + = wchar / wcpncpy.c
LOCAL_SRC_FILES + = wchar / wcscasecmp.c
LOCAL_SRC_FILES + = wchar / wcscat.c
LOCAL_SRC_FILES + = wchar / wcschr.c
LOCAL_SRC_FILES + = wchar / wcscmp.c
LOCAL_SRC_FILES + = wchar / wcscoll.c
LOCAL_SRC_FILES + = wchar / wcscpy.c
LOCAL_SRC_FILES + = wchar / wcscspn.c
LOCAL_SRC_FILES + = wchar / wcsdup.c
LOCAL_SRC_FILES + = wchar / wcslcat.c
LOCAL_SRC_FILES + = wchar / wcslcpy.c
LOCAL_SRC_FILES + = wchar / wcslen.c
LOCAL_SRC_FILES + = wchar / wcsncasecmp.c
LOCAL_SRC_FILES + = wchar / wcsncat.c
LOCAL_SRC_FILES + = wchar / wcsncmp.c
LOCAL_SRC_FILES + = wchar / wcsncpy.c
LOCAL_SRC_FILES + = wchar / wcsnlen.c
LOCAL_SRC_FILES + = wchar / wcspbrk.c
LOCAL_SRC_FILES + = wchar / wcsrchr.c
LOCAL_SRC_FILES + = wchar / wcsspn.c
LOCAL_SRC_FILES + = wchar / wcsstr.c
LOCAL_SRC_FILES + = wchar / wcstok.c
LOCAL_SRC_FILES + = wchar / wcswidth.c
LOCAL_SRC_FILES + = wchar / wcsxfrm.c
LOCAL_SRC_FILES + = wchar / wmemchr.c
LOCAL_SRC_FILES + = wchar / wmemcmp.c
LOCAL_SRC_FILES + = wchar / wmemcpy.c
LOCAL_SRC_FILES + = wchar / wmemmove.c
LOCAL_SRC_FILES + = wchar / wmemset.c


LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / include

ARCH = $ (ANDROID_ABI)

CPP_STATIC = $ (ANDROID_NDK) / sources / cxx-stl / gnu-libstdc + + $ (CXXSTL) / libs / $ (ARCH) / libgnustl_static.a

LOCAL_CFLAGS: =-std = gnu99
ifeq ($ (ARCH), armeabi)
+ =-DHAVE_ARMEABI LOCAL_CFLAGS

LOCAL_ARM_MODE: = arm
endif
ifeq ($ (ARCH), armeabi-v7a)
+ =-DHAVE_ARMEABI_V7A LOCAL_CFLAGS
endif
LOCAL_LDLIBS: =-L $ (VLC_CONTRIB) / lib \
$ (VLC_MODULES) \
$ (VLC_BUILD_DIR) / lib / .libs / libvlc.a \
$ (VLC_BUILD_DIR) / src / .libs / libvlccore.a \
$ (VLC_BUILD_DIR) / compat / .libs / libcompat.a \
-Ldl-lz-lm-LLOG \
-Ldvbpsi-lebml-lmatroska-LTAG \
-Logg-lFLAC-ltheora \
-Lmpeg2-ODF-la52 \
-Lavformat-lavcodec-lswscale-lavutil-lpostproc-LGSM-lopenjpeg \
-LliveMedia-lUsageEnvironment-lBasicUsageEnvironment-lgroupsock \
-Lspeex-lspeexdsp \
-Lxml2-lpng-lgnutls-lgcrypt lgpg-error-\
-Lfreetype-liconv-lass-lfribidi-Lopus \
$ (CPP_STATIC)

include $ (BUILD_SHARED_LIBRARY)


include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-gingerbread
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_GINGERBREAD) / frameworks / base / include $ (ANDROID_SYS_HEADERS_GINGERBREAD) / system / core / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)

include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-hc
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_HC) / frameworks / base / include $ (ANDROID_SYS_HEADERS_HC) / frameworks / base / native / include $ (ANDROID_SYS_HEADERS_HC) / system / core / include $ (ANDROID_SYS_HEADERS_HC) / hardware / libhardware / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)

include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-ics
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_ICS) / frameworks / base / include $ (ANDROID_SYS_HEADERS_ICS) / frameworks / base / native / include $ (ANDROID_SYS_HEADERS_ICS) / system / core / include $ (ANDROID_SYS_HEADERS_ICS) / hardware / libhardware / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)

Android.mk file is as follows:

LOCAL_PATH: = $ (call my-dir)
include $ (CLEAR_VARS)

LOCAL_MODULE: = libvlcjni

LOCAL_SRC_FILES: = libvlcjni.c aout.c thumbnailer.c condattr.c pthread-pthread-pthread-once.c rwlocks.c eventfd.c sem.c
LOCAL_SRC_FILES + = pipe2.c
LOCAL_SRC_FILES + = wchar / wcpcpy.c
LOCAL_SRC_FILES + = wchar / wcpncpy.c
LOCAL_SRC_FILES + = wchar / wcscasecmp.c
LOCAL_SRC_FILES + = wchar / wcscat.c
LOCAL_SRC_FILES + = wchar / wcschr.c
LOCAL_SRC_FILES + = wchar / wcscmp.c
LOCAL_SRC_FILES + = wchar / wcscoll.c
LOCAL_SRC_FILES + = wchar / wcscpy.c
LOCAL_SRC_FILES + = wchar / wcscspn.c
LOCAL_SRC_FILES + = wchar / wcsdup.c
LOCAL_SRC_FILES + = wchar / wcslcat.c
LOCAL_SRC_FILES + = wchar / wcslcpy.c
LOCAL_SRC_FILES + = wchar / wcslen.c
LOCAL_SRC_FILES + = wchar / wcsncasecmp.c
LOCAL_SRC_FILES + = wchar / wcsncat.c
LOCAL_SRC_FILES + = wchar / wcsncmp.c
LOCAL_SRC_FILES + = wchar / wcsncpy.c
LOCAL_SRC_FILES + = wchar / wcsnlen.c
LOCAL_SRC_FILES + = wchar / wcspbrk.c
LOCAL_SRC_FILES + = wchar / wcsrchr.c
LOCAL_SRC_FILES + = wchar / wcsspn.c
LOCAL_SRC_FILES + = wchar / wcsstr.c
LOCAL_SRC_FILES + = wchar / wcstok.c
LOCAL_SRC_FILES + = wchar / wcswidth.c
LOCAL_SRC_FILES + = wchar / wcsxfrm.c
LOCAL_SRC_FILES + = wchar / wmemchr.c
LOCAL_SRC_FILES + = wchar / wmemcmp.c
LOCAL_SRC_FILES + = wchar / wmemcpy.c
LOCAL_SRC_FILES + = wchar / wmemmove.c
LOCAL_SRC_FILES + = wchar / wmemset.c


LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / include

ARCH = $ (ANDROID_ABI)

CPP_STATIC = $ (ANDROID_NDK) / sources / cxx-stl / gnu-libstdc + + $ (CXXSTL) / libs / $ (ARCH) / libgnustl_static.a

LOCAL_CFLAGS: =-std = gnu99
ifeq ($ (ARCH), armeabi)
+ =-DHAVE_ARMEABI LOCAL_CFLAGS

LOCAL_ARM_MODE: = arm
endif
ifeq ($ (ARCH), armeabi-v7a)
+ =-DHAVE_ARMEABI_V7A LOCAL_CFLAGS
endif
LOCAL_LDLIBS: =-L $ (VLC_CONTRIB) / lib \
$ (VLC_MODULES) \
$ (VLC_BUILD_DIR) / lib / .libs / libvlc.a \
$ (VLC_BUILD_DIR) / src / .libs / libvlccore.a \
$ (VLC_BUILD_DIR) / compat / .libs / libcompat.a \
-Ldl-lz-lm-LLOG \
-Ldvbpsi-lebml-lmatroska-LTAG \
-Logg-lFLAC-ltheora \
-Lmpeg2-ODF-la52 \
-Lavformat-lavcodec-lswscale-lavutil-lpostproc-LGSM-lopenjpeg \
-LliveMedia-lUsageEnvironment-lBasicUsageEnvironment-lgroupsock \
-Lspeex-lspeexdsp \
-Lxml2-lpng-lgnutls-lgcrypt lgpg-error-\
-Lfreetype-liconv-lass-lfribidi-Lopus \
$ (CPP_STATIC)

include $ (BUILD_SHARED_LIBRARY)


include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-gingerbread
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_GINGERBREAD) / frameworks / base / include $ (ANDROID_SYS_HEADERS_GINGERBREAD) / system / core / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)

include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-hc
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_HC) / frameworks / base / include $ (ANDROID_SYS_HEADERS_HC) / frameworks / base / native / include $ (ANDROID_SYS_HEADERS_HC) / system / core / include $ (ANDROID_SYS_HEADERS_HC) / hardware / libhardware / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)

include $ (CLEAR_VARS)

LOCAL_MODULE: = libiomx-ics
LOCAL_SRC_FILES: = .. / $ (VLC_SRC_DIR) / modules / codec / omxil / iomx.cpp
LOCAL_C_INCLUDES: = $ (VLC_SRC_DIR) / modules / codec / omxil $ (ANDROID_SYS_HEADERS_ICS) / frameworks / base / include $ (ANDROID_SYS_HEADERS_ICS) / frameworks / base / native / include $ (ANDROID_SYS_HEADERS_ICS) / system / core / include $ (ANDROID_SYS_HEADERS_ICS) / hardware / libhardware / include
LOCAL_CFLAGS: =-WNO-psabi
LOCAL_LDLIBS: =-L $ (ANDROID_LIBS)-lgcc-lstagefright-lmedia-lutils-lbinder

include $ (BUILD_SHARED_LIBRARY)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文