Ich möchte Cmake, um Regeln für mich zu installieren, die auch automatisch die Konfiguration und andere Dinge installieren. Ich sah this question, aber fügte hinzu:CMake installieren: Installation von Konfigurationsdateien
add_executable(solshare_stats.conf solshare_stats.conf)
meiner CMakeLists.txt Datei gab mir nur Warnungen und Fehler:
CMake Error: CMake can not determine linker language for target:solshare_stats.conf
CMake Error: Cannot determine link language for target "solshare_stats.conf".
...
make[2]: *** No rule to make target `CMakeFiles/solshare_stats.conf.dir/build'. Stop.
make[1]: *** [CMakeFiles/solshare_stats.conf.dir/all] Error 2
make: *** [all] Error 2
Wie ich Config, init und/oder Logfiles Cmake tun hinzufügen Regeln installieren?
Hier ist meine komplette CMakeLists.txt Datei:
project(solshare_stats)
cmake_minimum_required(VERSION 2.8)
aux_source_directory(. SRC_LIST)
add_executable(${PROJECT_NAME} ${SRC_LIST})
add_executable(solshare_stats.conf solshare_stats.conf)
target_link_libraries(solshare_stats mysqlcppconn)
target_link_libraries(solshare_stats wiringPi)
if(UNIX)
if(CMAKE_COMPILER_IS_GNUCXX)
SET(CMAKE_EXE_LINKER_FLAGS "-s")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O2 -Wall -std=c++0x")
endif()
install(TARGETS solshare_stats DESTINATION /usr/bin COMPONENT binaries)
install(TARGETS solshare_stats.conf DESTINATION /etc/solshare_stats COMPONENT config)
endif()
Und was sollte ich zu den install() -Aufrufen ändern, damit dies funktioniert? Weil ich mit den aktuellen install() Befehlen diesen Fehler bekomme: 'install TARGETS gegebenes Ziel" solshare_stats.conf "welches in diesem Verzeichnis nicht existiert. ' – Cheiron
Entschuldigung - ich füge einfach das hinzu! – Fraser
Fertig. Übrigens ist es üblich, einen relativen Pfad als 'DESTINATION'-Argument zu übergeben, so dass das' CMAKE_INSTALL_PREFIX' berücksichtigt wird. – Fraser