问题描述
尝试构建图形项目时,我得到:
/usr/bin/ld: /usr/local/lib/libglfw3.a(x11_window.c.o): undefined reference to symbol 'XConvertSelection'
//usr/lib/x86_64-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line
我尝试了另一个答案的解决方案,即pkg-config --static --libs x11 xrandr xi xxf86vm glew glfw3
我将其放在.sh文件中,但我不知道将其放在哪里,因此我将其放置在任何地方,但仍然无法正常工作。这是我的run.sh文件
mkdir build
cd build
pkg-config --static --libs x11 xrandr xi xxf86vm glew glfw3
cmake ..
pkg-config --static --libs x11 xrandr xi xxf86vm glew glfw3
make -j8
pkg-config --static --libs x11 xrandr xi xxf86vm glew glfw3
cd bin
./menger
整个程序可以在本地Mac上运行,但是我试图在某些不同的环境上运行它,以查看其他ppl是否也可以运行我的项目。我在学校的linux计算机上尝试过,那是我收到xconvert选择错误的地方。
如果有帮助,这是回购协议:https://github.com/amit56/Voyage
顺便说一下,这是我的gl3.cmake文件,这和构建文件一样吗?
if (APPLE)
set(GLEW_INCLUDE_DIRS "/usr/local/Cellar/glew/2.1.0_1/include")
set(GLEW_LIBRARIES "/usr/local/Cellar/glew/2.1.0_1/lib/libGlEW.a")
endif ()
INCLUDE_DIRECTORIES(${GLEW_INCLUDE_DIRS})
LINK_LIBRARIES(${GLEW_LIBRARIES})
IF (WIN32)
find_package(glfw3 CONFIG REQUIRED)
LIST(APPEND stdgl_libraries glfw ${GLEW_LIBRARIES})
ELSE ()
FIND_PACKAGE(PkgConfig REQUIRED)
#pkg_search_module(GLFW3 REQUIRED glfw3)
set(GLFW3_INCLUDE_DIRS "/usr/local/include")
INCLUDE_DIRECTORIES(${GLFW3_INCLUDE_DIRS})
set(GLFW3_STATIC_LIBRARIES "/usr/local/lib/libglfw3.a")
LIST(APPEND stdgl_libraries ${GLFW3_STATIC_LIBRARIES} ${GLEW_LIBRARIES})
ENDIF ()
message(STATUS "GLEW_LIBRARIES=${GLEW_LIBRARIES}")
message(STATUS "GLFW_LIBRARIES=${GLFW3_STATIC_LIBRARIES}")```
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)