我试图进行世界上最简单的Android环境测试,只是为了在攻击端口之前连接所有的鸭子。
我需要做的第一件事就是链接GLES 1.0 ......这是我采取的步骤:
ONE:使用Android Studio 2.3.2,我创建了一个带有基本活动的新C ++项目
TWO:在AndroidManifest.xml中我添加了这个:
<uses-feature android:glEsVersion="0x00010000" />
三:在CMakeLists.txt中我添加了以下几行:
find_package( ZLIB REQUIRED )
find_library( GLES1_LIBRARY names GLESv1_CM )
include_directories( ${ZLIB_INCLUDE_DIRS} ${GLES_INCLUDE_DIRS} )
...
target_link_libraries( # Specifies the target library.
native-lib
${ZLIB_LIBRARIES}
${GLES1_LIBRARIES}
${log-lib} )
适用于log-lib,它也适用于zlib ......它不适用于GLES1(参见下一步)
四:我刚给native-lib.cpp添加了一行简单的
glEnable(GL_BLEND);
点击编译并......
CMakeFiles/native-lib.dir/src/main/cpp/native-lib.cpp.o: In function `Java_com_game_raptisoft_myapplication_MainActivity_stringFromJNI':
C:\Users\Raptisoft2011\Desktop\Android\MyApplication\app\src\main\cpp/native-lib.cpp:12: undefined reference to `glEnable'
如何解决此问题?我需要包含更多链接语句吗?我尝试过GLES1_LIBRARY的各种迭代(比如GLES_LIBRARY等),但没有任何效果。
答案 0 :(得分:0)
尝试
target_link_libraries( # Specifies the target library.
native-lib
${ZLIB_LIBRARIES}
EGL
GLESv1_CM
${log-lib} )
此外,您已定位${GLES1_LIBRARIES}
,但您已将其拼写为GLES1_LIBRARY
如果可以,我建议移植到gles2。您最不用担心的是编写着色器,它可以让您更好地控制数据的绘制方式。
BTW,这是使用PopCap框架创建Chuzzle的Rapitsoft吗?