CMake сначала не создает добавленный подкаталог - PullRequest
0 голосов
/ 14 января 2019

Я пишу проект на C ++, в котором используется Poco Сетевая библиотека. Я использую CMake для настройки проекта.

Я бы хотел добавить Poco в качестве подкаталога в мой проект, чтобы он был встроен в мой основной проект. Вот мой сокращенный основной CMakeLists.txt

cmake_minimum_required(VERSION 3.2)

project(FunProj)

if(NOT CMAKE_BUILD_TYPE)
      set(CMAKE_BUILD_TYPE "Release")
endif()

message(STATUS "Building in ${CMAKE_BUILD_TYPE} mode...")

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")

set(HEADER_FILES IDataProvider.h DataProvider.h)
set(SOURCE_FILES main.cpp
                 DataProvider.cpp)

set(POCO_STATIC ON)
ADD_SUBDIRECTORY(poco)

include_directories(${CMAKE_SOURCE_DIR}/poco/Net/include)
include_directories(${CMAKE_SOURCE_DIR}/poco/Foundation/include)

link_directories(${CMAKE_CURRENT_BINARY_DIR}/poco/lib)

add_executable(FunProj ${SOURCE_FILES} ${HEADER_FILES})
target_link_libraries(${EXEC_NAME} PocoNet)

Когда я запускаю cmake, он настраивает все, включая Poco, но когда я запускаю make, он не компилирует библиотеки Poco. Он компилирует только main.o и DataProvider.o, а затем компоновщик завершается с ошибкой, что libPocoNet.a не существует.

В чем проблема и как ее решить?

Спасибо.

...