我的程序使用giblib和Imlib2库,并且使用cmake构建。
它在我的计算机上可以正常运行,但在其他计算机上则不能。
我想原因是我在每个库中安装了我的程序需要的东西,而其他不需要的。
我的目标是制作独立程序。 (不需要另外安装任何其他库)
我应该在cmake文件中添加什么?
projectDef.cmake源代码
file (GLOB PLATFORM RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} X11/[^.]*.cpp X11/[^.]*.h X11/[^.]*.cmake ) SOURCE_GROUP(X11 FILES ${PLATFORM}) add_definitions( ) set (SOURCES ${SOURCES} ${PLATFORM} ) add_x11_plugin(${PROJECT_NAME} SOURCES) target_link_libraries(${PROJECT_NAME} ${PLUGIN_INTERNAL_DEPS} ) include_directories(/usr/include/giblib) include_directories(/usr/include/X11) target_link_libraries(MyProject X11) target_link_libraries(MyProject Imlib2) target_link_libraries(MyProject giblib)
CMakeList.txt源代码
cmake_minimum_required (VERSION 2.6) set (CMAKE_BACKWARDS_COMPATIBILITY 2.6) set(BUILD_SHARED_LIBS OFF) set(CMAKE_EXE_LINKER_FLAGS "-static") Project(${PLUGIN_NAME}) file (GLOB GENERAL RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} [^.]*.cpp [^.]*.h [^.]*.cmake ) include_directories(${PLUGIN_INCLUDE_DIRS}) SET_SOURCE_FILES_PROPERTIES( ${GENERATED} PROPERTIES GENERATED 1 ) SOURCE_GROUP(Generated FILES ${GENERATED} ) SET( SOURCES ${GENERAL} ${GENERATED} ) include_platform()
我的程序使用giblib和Imlib2库,并且使用cmake构建。它可以在我的计算机上完美运行,但不能在其他计算机上运行。我想原因是我在每个库中安装了程序需要的内容,但是...
尝试在根CMakeLists.txt中从此选项开始: