gpt4 book ai didi

android - 在 Android NDK 中将 GLES 包含到 CMakeLists

转载 作者:太空狗 更新时间:2023-10-29 16:12:26 25 4
gpt4 key购买 nike

在 Android NDK 旧版本中,我们像这样包含 GLES:

LOCAL_LDLIBS += -lGLESv1_CM

但在最新版本中,出于相同目的,Android 使用 CMakeLists 而不是 Android.mk。那么如何将 GLES/GLES2/GLES3 依赖添加到 CMakeList 文件中呢?谢谢!

最佳答案

gradle scripting ndk 模块和 cmakelist 外部工具之间的区别在于定义脚本的方式。在这种情况下, 您需要创建您的 CMake 脚本(CMakeLists.txt,并更改您的 gradle 文件以激活外部工具):

CMakelists:

cmake_minimum_required(VERSION 3.4.1)

# now build app's shared lib
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Wall")

add_library(gljni SHARED
your_code.cpp)

# add lib dependencies
target_link_libraries(gljni
android
log
EGL
GLESv2) #here you can put your opengl linking library.

命令 target_link_libraries 指定它们将要链接的库。

在gradle文件中需要指定外部原生构建,添加编译器、android原生版本等cmake选项

 externalNativeBuild {
cmake {
// Available argumetns are inside ${SDK}/cmake/.../android.toolchain.cmake file
arguments '-DANDROID_PLATFORM=android-9',
'-DANDROID_TOOLCHAIN=clang', '-DANDROID_STL=gnustl_static'
}
}

希望这对您有所帮助。

干杯

乌奈。

关于android - 在 Android NDK 中将 GLES 包含到 CMakeLists,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42103942/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com