@4aiman Thank for your help
Irrlicht-ogl-es (from
http://svn.code.sf.net/p/irrlicht/code/branches/ogl-es/ ) is compiled with:
#define _IRR_COMPILE_WITH_OPENGL_
#define _IRR_COMPILE_WITH_OGLES1_
#define _IRR_COMPILE_WITH_OGLES2_
#define _IRR_COMPILE_WITH_EGL_MANAGER_
#define _IRR_COMPILE_WITH_GLX_MANAGER_
#define _IRR_COMPILE_WITH_X11_DEVICE_
make clean && make
Minetest is compiled as:
make clean
cmake . -DRUN_IN_PLACE=TRUE -DENABLE_GLES=1 -DEGL_INCLUDE_DIR=/opt/vc/include/EGL -DEGL_LIBRARY=/usr/lib/arm-linux-gnueabihf/libEGL.so -DOPENGLES2_INCLUDE_DIR=/opt/vc/include/GLES2 -DOPENGLES2_LIBRARY=/usr/lib/arm-linux-gnueabihf/libGLESv2.so -DFREETYPE_INCLUDE_DIR_freetype2=/usr/include/freetype2 -DFREETYPE_INCLUDE_DIR_ft2build=/usr/include/freetype2 -DFREETYPE_LIBRARY=/usr/lib/arm-linux-gnueabihf/libfreetype.a -DIRRLICHT_INCLUDE_DIR=/home/pi/irrlicht/ogl-es/include -DIRRLICHT_LIBRARY=/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a
make -j 4
In the system are installed these packages:
libegl1-mesa-dev - free implementation of the EGL API -- development files
libgegl-dev - Generic Graphics Library (development files)
libgles2-mesa-dev - free implementation of the OpenGL|ES 2.x API -- development files
libgl1-mesa-swx11-dev - free implementation of the OpenGL API -- development files
still, getting these errors at linking time:
- Code: Select all
Linking CXX executable ../bin/minetest
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(COGLESDriver.o): In function `irr::video::COGLES1Driver::drawVertexPrimitiveList2d3d(void const*, unsigned int, void const*, unsigned int, irr::video::E_VERTEX_TYPE, irr::scene::E_PRIMITIVE_TYPE, irr::video::E_INDEX_TYPE, bool)':
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESDriver.cpp:773: undefined reference to `glPointSizePointerOES'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(COGLESDriver.o): In function `irr::video::COGLES1Driver::uploadClipPlane(unsigned int)':
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESDriver.cpp:3098: undefined reference to `glClipPlanef'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(COGLESExtensionHandler.o): In function `irr::video::COGLES1ExtensionHandler::initExtensions(irr::video::COGLES1Driver*, bool)':
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:248: undefined reference to `eglGetProcAddress'
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:249: undefined reference to `eglGetProcAddress'
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:250: undefined reference to `eglGetProcAddress'
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:251: undefined reference to `eglGetProcAddress'
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:255: undefined reference to `eglGetProcAddress'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(COGLESExtensionHandler.o):/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLESExtensionHandler.cpp:259: more undefined references to `eglGetProcAddress' follow
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(COGLES2Driver.o): In function `irr::video::COGLES2Driver::testEGLError()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/COGLES2Driver.cpp:1663: undefined reference to `eglGetError'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::initialize(irr::SIrrlichtCreationParameters const&, irr::video::SExposedVideoData const&)':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:48: undefined reference to `eglGetDisplay'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:66: undefined reference to `eglInitialize'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::terminate()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:88: undefined reference to `eglMakeCurrent'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:90: undefined reference to `eglTerminate'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::generateSurface()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:160: undefined reference to `eglChooseConfig'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:249: undefined reference to `eglCreateWindowSurface'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:252: undefined reference to `eglCreateWindowSurface'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:259: undefined reference to `eglBindAPI'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:263: undefined reference to `eglSwapInterval'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::destroySurface()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:274: undefined reference to `eglMakeCurrent'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:276: undefined reference to `eglDestroySurface'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::generateContext()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:310: undefined reference to `eglCreateContext'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::destroyContext()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:329: undefined reference to `eglMakeCurrent'
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:330: undefined reference to `eglDestroyContext'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::activateContext(irr::video::SExposedVideoData const&)':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:337: undefined reference to `eglMakeCurrent'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::swapBuffers()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:354: undefined reference to `eglSwapBuffers'
/home/pi/irrlicht/ogl-es/lib/Linux/libIrrlicht.a(CEGLManager.o): In function `irr::video::CEGLManager::testEGLError()':
/home/pi/irrlicht/ogl-es/source/Irrlicht/CEGLManager.cpp:360: undefined reference to `eglGetError'
collect2: ld returned 1 exit status
src/CMakeFiles/minetest.dir/build.make:4827: recipe for target 'bin/minetest' failed
make[2]: *** [bin/minetest] Error 1
CMakeFiles/Makefile2:136: recipe for target 'src/CMakeFiles/minetest.dir/all' failed
make[1]: *** [src/CMakeFiles/minetest.dir/all] Error 2
Makefile:133: recipe for target 'all' failed
make: *** [all] Error 2