Я пытаюсь выполнить кросс-компиляцию примера HelloTriangle с OpenGLES2.0, используя VisualGDB для RaspberryPi 3, на котором работает Raspbian lite.
Я предполагаю, что смог правильно включить библиотеки libbrcmEGL.so
и libbrcmGLESv2.so
в мой файл CMakeLists.txt
потому что вместо того, чтобы дать мне эти ошибки:
c:/sysgcc/raspberry/bin/../lib/gcc/arm-linux-gnueabihf/6/../../../../arm-linux-gnueabihf/bin/ld.exe: cannot find -lLIBGLES
c:/sysgcc/raspberry/bin/../lib/gcc/arm-linux-gnueabihf/6/../../../../arm-linux-gnueabihf/bin/ld.exe: cannot find -lLIBEGL`
Это дает мне эти ошибки
make[2]: *** No rule to make target `libbrcmEGL.so', needed by `HelloTriangle'. Stop.`
Это мой файл CMakeLists:
cmake_minimum_required(VERSION 2.7)
project(HelloTriangle)
set(LIBRARIES_FROM_REFERENCES "")
add_executable(HelloTriangle HelloTriangle.cpp esShapes.c esTransform.c esUtil.c esShader.c)
include_directories(include)
target_link_libraries(HelloTriangle ${CMAKE_BINARY_DIR}/libbrcmGLESv2.so ${CMAKE_BINARY_DIR}/libbrcmEGL.so "${LIBRARIES_FROM_REFERENCES}")
Я не понимаю, что еще нужно, чтобы сделать цель. Просматривая переполнение стека, я видел предложения добавить
LINK_DIRECTORIES(/opt/vc/lib/)
Я тоже пробовал
target_link_libraries(HelloTriangle /opt/vc/lib/libbrcmGLESv2.so /opt/vc/lib/libbrcmEGL.so "${LIBRARIES_FROM_REFERENCES}")
Я также проверил наличие этих библиотек в моем системном корне в:
C:\SysGCC\raspberry\arm-linux-gnueabihf\sysroot
Я все еще получаю ту же ошибку:
Мне нужна помощь, чтобы выяснить, чего не хватает в моем CMakeLists.txt