2016-05-22 163 views
2

我正在嘗試使用CMake編譯應用程序。我試圖使用的庫是SFML。 Ubuntu是我的首選操作系統。使用CMake編譯SFML應用程序

這是我的CMakeLists.txt( 「//」 的意見而不是實際文件的一部分):

project(MyApp)   // App name 
cmake_minimum_required(VERSION 2.8)  // CMake version 
aux_source_directory(. SRC_LIST)   // Source files 
add_executable(${PROJECT_NAME} ${SRC_LIST})   // Executable 
target_compile_features(${PROJECT_NAME} PRIVATE cxx_range_for) // C++ version taken care of 

set(CMAKE_MODULE_PATH "/usr/local/share/SFML/cmake/Modules" ${CMAKE_MODULE_PATH})   // Path to my "FindSML.cmake" file 
find_package(SFML 2 REQUIRED system window graphics network audio)   // Finding SFML 2.X 

#LINKING 
target_link_libraries(${PROJECT_NAME}  // Linking libraries 
${SFML_LIBRARIES})    // Linking SFML 

這是我得到的錯誤:

error: SerIDE: hidden symbol `__cpu_model' in /usr/lib/gcc/x86_64-linux-gnu/5/libgcc.a(cpuinfo.o) is referenced by DSO 
error: final link failed: Bad value 
error: collect2: error: ld returned 1 exit status 
+0

看起來要麼SFML庫或使用符號鏈接從隱藏可執行的嘗試。請參閱[這個問題](http://stackoverflow.com/questions/23696585/what-does-exactly-the-warning-mean-about-hidden-symbol-being-referenced-by-dso)瞭解更多有關該錯誤的信息。 – Tsyvarev

+0

我可以證實這個錯誤 - 我用命令行編譯我的程序'g ++ --std = C++ 11 -Wall main.cpp -lsfml-graphics -lsfml-window -lsfml-system -o a.out' – user3728501

+0

http: //en.sfml-dev.org/forums/index.php?topic=20394.0 – user3728501

回答