cmake编译文件生成android工程

时间:2022-07-05 12:54:56

问题提出:

1.在生成android或者ios工程时,因代码使用vs编写,最终生成android和ios工程时完全不一样的,现在需要生成过程能够跨平台;

2.cmake是一个跨平台编译工具,只需选择不同平台的工具链即可生成相应平台的工程;

3.此过程与cocos2d生成的工程类似,直接跨平台;

具体步骤与注意事项:

使用工具android、ios工具链文件,android游戏开发ndk,ant,sdk,mingw;

1.编写cmakelist.txt文件,包括需要编译的文件,需要连接的库以及最终生成的makefile文件;

2.使用cmake-gui编译文件,过程中需要选择对应的工具链,并且更改各个参数的值,具体以需要为主;

3.使用eclipse的project打开由cmake编译生成的makefile文件;

4.编译完成最终生成动态链接库,对于android生成的为.so文件,编译对应的.mk文件,生成相应的.apk文件;

.mk文件如下:

LOCAL_PATH := $(call my-dir)  
 
include $(CLEAR_VARS)
LOCAL_MODULE := Android
LOCAL_SRC_FILES :=$(TARGET_ARCH_ABI)/libAndroid.so
include $(PREBUILT_SHARED_LIBRARY)


include $(CLEAR_VARS)  
LOCAL_MODULE    := libgl2jni
LOCAL_SRC_FILES += $(call all-subdir-java-files)  
LOCAL_SHARED_LIBRARIES=Android
include $(BUILD_SHARED_LIBRARY)  


#include $(CLEAR_VARS)  
#LOCAL_MODULE := libAndroid  
#LOCAL_SRC_FILES := libAndroid.so  
  
#include $(PREBUILT_SHARED_LIBRARY)