2013-11-04 83 views
1

以下是我的cmake文件,其中出現「無法找到GLUT(丟失:GLUT_glut_LIBRARY)」錯誤。我想我的目標鏈接庫存在問題。我究竟做錯了什麼?CMake目標鏈接庫「無法找到GLUT(丟失:GLUT_glut_LIBRARY)」

cmake_minimum_required(VERSION 2.6) 

SET(MY_PROJECT_NAME Test_1) 
SET(MY_SOURCE_FILES Task_1.cpp) 
SET(GLUT_INCLUDE_DIR C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\include\GL) 
SET(GLUT_LIBRARY C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\lib\glut32.lib) 

project(${MY_PROJECT_NAME}) 

# required libraries 
find_package(OpenGL REQUIRED) 
find_package(GLUT REQUIRED) 

# include directories 
include_directories(
    ${GLUT_LIB_DIR} 
    ${OPENGL_INCLUDE_DIR} 
    ${GLUT_INCLUDE_DIR} 
) 

# source code files (sources *and* headers) 
add_executable(${MY_PROJECT_NAME} 
    ${MY_SOURCE_FILES} 
) 

# link against these libraries 
target_link_libraries(${MY_PROJECT_NAME} 
    ${GLUT_LIBRARY} 
    ${OPENGL_LIBRARY} 
) 

回答

1

不要將路徑硬編碼到您的CMakeLists!它擊敗了CMake作爲便攜式構建系統的全部目的。

如果您想覆蓋CMake查找腳本獲取的值,請通過命令行或其中一個cmake UI(ccmakecmake-gui)提供值。

此外,請務必檢查至少documentation您使用的所有查找模塊,如果仍然有問題打開,請直接轉到source code。例如,您使用的GLUT_LIB_DIR變量不存在。此外,請注意查找腳本使用GLUT_ROOT_PATH變量作爲Windows上本地GLUT安裝位置的提示。

最後,確保GLUT實際安裝在您的機器上。 Visual C++默認爲而不是附帶GLUT,因此您可能必須先下載並自行構建它。