CMakeLists File cmake_minimum_required(VERSION 3.4 FATAL_ERROR) project(pandaScope) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_CFLAGS} -O3 -Wall") set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_SOURCE_DIR}/bin) set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/CMakeModules) find_package(OpenCV REQUIRED) find_package(GSL REQUIRED) find_package(Eigen3 3.3 REQUIRED NO_MODULE) find_package(Boost REQUIRED) find_package(INDI 1.7 REQUIRED) find_package(Nova REQUIRED) find_package(CFITSIO REQUIRED) add_library(cspice STATIC IMPORTED) set_property(TARGET cspice PROPERTY IMPORTED_LOCATION /usr/lib/cspice.a) INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} ) include_directories(${INDI_INCLUDE_DIR}) include_directories(${NOVA_INCLUDE_DIR}) include_directories(${CFITSIO_INCLUDE_DIR}) IF (CMAKE_BUILD_TYPE MATCHES COVERAGE) include(CodeCoverage) APPEND_COVERAGE_COMPILER_FLAGS() ENDIF (CMAKE_BUILD_TYPE MATCHES COVERAGE) set(SOURCE ${SOURCE} src/main.cpp src/focus/focuser.cpp src/detection/detection.cpp src/iod/state_generation.cpp src/iod/lambert_gooding.cpp src/batch/lambert.cpp src/batch/batch.cpp src/utilities/conversions.cpp src/utilities/kernels.cpp src/batch/propagator.cpp src/telescope/functions.cpp src/telescope/operation.cpp) set(HEADERS ${HEADERS} src/includes.hpp src/focus/focuser.hpp src/detection/detection.hpp src/iod/state_generation.hpp src/iod/lambert_gooding.hpp dependencies/cxxopts.hpp src/batch/lambert.hpp src/batch/batch.hpp src/utilities/conversions.hpp src/utilities/vectors.hpp src/utilities/kernels.hpp src/batch/propagator.hpp src/telescope/functions.hpp src/telescope/operation.hpp) add_subdirectory(testing) add_executable(pandaScope ${SOURCE} ${HEADERS}) target_link_libraries(pandaScope ${OpenCV_LIBS}) target_link_libraries(pandaScope usbp-1) target_link_libraries(pandaScope GSL::gsl GSL::gslcblas) target_link_libraries(pandaScope Eigen3::Eigen) target_link_libraries(pandaScope LINK_PUBLIC ${Boost_LIBRARIES}) target_link_libraries(pandaScope cspice) target_link_libraries(pandaScope ${INDI_LIBRARIES}) target_link_libraries(pandaScope ${INDI_CLIENT_LIBRARIES}) target_link_libraries(pandaScope ${NOVA_LIBRARIES}) target_link_libraries(pandaScope ${CFITSIO_LIBRARIES}) Error Log CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `test()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:20: undefined reference to `INDI::BaseClient::setServer(char const*, unsigned int)' /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:22: undefined reference to `INDI::BaseClient::watchDevice(char const*)' /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:24: undefined reference to `INDI::BaseClient::connectServer()' /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:26: undefined reference to `INDI::BaseClient::setBLOBMode(BLOBHandling, char const*, char const*)' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::MyClient()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:35: undefined reference to `INDI::BaseClient::BaseClient()' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::newNumber(_INumberVectorProperty*)': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:77: undefined reference to `INDI::BaseClient::sendNewNumber(_INumberVectorProperty*)' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::newProperty(INDI::Property*)': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:56: undefined reference to `INDI::BaseClient::sendNewNumber(_INumberVectorProperty*)' /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:96: undefined reference to `INDI::BaseClient::connectDevice(char const*)' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::setTemperature()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:56: undefined reference to `INDI::BaseClient::sendNewNumber(_INumberVectorProperty*)' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::takeExposure()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:77: undefined reference to `INDI::BaseClient::sendNewNumber(_INumberVectorProperty*)' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::~MyClient()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.hpp:23: undefined reference to `INDI::BaseClient::~BaseClient()' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `MyClient::~MyClient()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.hpp:23: undefined reference to `INDI::BaseClient::~BaseClient()' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `std::unique_ptr >::~unique_ptr()': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.hpp:23: undefined reference to `INDI::BaseClient::~BaseClient()' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o: In function `__static_initialization_and_destruction_0': /home/cassidy/CLionProjects/PalskiScope/src/telescope/functions.cpp:35: undefined reference to `INDI::BaseClient::BaseClient()' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o:(.data.rel.ro._ZTI8MyClient[_ZTI8MyClient]+0x10): undefined reference to `typeinfo for INDI::BaseClient' CMakeFiles/pandaScope.dir/src/telescope/functions.cpp.o:(.data.rel.ro._ZTV8MyClient[_ZTV8MyClient]+0x80): undefined reference to `INDI::BaseClient::newUniversalMessage(std::__cxx11::basic_string, std::allocator >)' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISNewBLOB' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISNewNumber' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISNewText' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISNewSwitch' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISGetProperties' /usr/lib/x86_64-linux-gnu/libindidriver.so: undefined reference to `ISSnoopDevice' collect2: error: ld returned 1 exit status CMakeFiles/pandaScope.dir/build.make:296: recipe for target 'bin/pandaScope' failed make[3]: *** [bin/pandaScope] Error 1 CMakeFiles/Makefile2:72: recipe for target 'CMakeFiles/pandaScope.dir/all' failed make[2]: *** [CMakeFiles/pandaScope.dir/all] Error 2 CMakeFiles/Makefile2:84: recipe for target 'CMakeFiles/pandaScope.dir/rule' failed make[1]: *** [CMakeFiles/pandaScope.dir/rule] Error 2 Makefile:118: recipe for target 'pandaScope' failed make: *** [pandaScope] Error 2