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
看起來要麼SFML庫或使用符號鏈接從隱藏可執行的嘗試。請參閱[這個問題](http://stackoverflow.com/questions/23696585/what-does-exactly-the-warning-mean-about-hidden-symbol-being-referenced-by-dso)瞭解更多有關該錯誤的信息。 – Tsyvarev
我可以證實這個錯誤 - 我用命令行編譯我的程序'g ++ --std = C++ 11 -Wall main.cpp -lsfml-graphics -lsfml-window -lsfml-system -o a.out' – user3728501
http: //en.sfml-dev.org/forums/index.php?topic=20394.0 – user3728501