Cmake link library target link error

后端 未结 1 1938
深忆病人
深忆病人 2020-11-30 06:45

Hi I have problem with linkg Glfw and other libraries using cmake. From command line i compile like this

g++ main.cpp -lGL -lGLU -lGLEW -lglfw
相关标签:
1条回答
  • 2020-11-30 07:00

    The syntax for target_link_libraries is:

    target_link_libraries(your_executable_name libraries_list)
    

    And you don't have to add add_definition statements (target_link_libraries adds this options)

    There are also some useful variables provided by OpenGL and GLEW packages.

    Your CMakeLists.txt should be like:

    cmake_minimum_required (VERSION 2.6)
    project (test)
    
    find_package(OpenGL REQUIRED)
    find_package(GLEW REQUIRED)
    
    include_directories(${OPENGL_INCLUDE_DIR} ${GLEW_INCLUDE_DIRS})
    
    add_executable(test
        main.cpp
    )
    
    target_link_libraries(test ${OPENGL_LIBRARIES} ${GLEW_LIBRARIES})
    

    One important detail to keep in mind is to place the target_link_libraries after the add_executable (or add_library) line.

    0 讨论(0)
提交回复
热议问题