E0145 Элемент не может быть инициализирован - cmake - VS2017 - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь связать приложение C ++ с библиотекой PCL.Я установил PCL и все его зависимости, используя VCPKG.Я использую Visual Studio 2017 и cmake 3.12 для X64.Когда я пытаюсь построить решение, оно дает мне следующие ошибки.

E0145   member "boost::filesystem::path::separator" may not be initialized 
C:\vcpkg-pcl\vcpkg-master\installed\x64- 
windows\include\boost\filesystem\path.hpp   65  

E0145   member "boost::filesystem::path::preferred_separator" may not be 
initialized C:\vcpkg-pcl\vcpkg-master\installed\x64- 
windows\include\boost\filesystem\path.hpp   66  

E0145   member "boost::filesystem::path::dot" may not be initialized 
C:\vcpkg-pcl\vcpkg-master\installed\x64- 
windows\include\boost\filesystem\path.hpp   67  

E2512   the argument to a feature-test macro must be a simple identifier 
C:\vcpkg-pcl\vcpkg-master\installed\x64- 
windows\include\boost\system\error_code.hpp 401

В консоли я нахожу эту ошибку, даже если я установил библиотеку Pthreads с помощью VCPKG и установил переменную PTHREADS_INCLUDE

-- Looking for pthread.h - not found

Это мой файл CMakelists.txt

cmake_minimum_required(VERSION 2.8 FATAL_ERROR)

project(compute_parameters)
find_package(PCL 1.5 REQUIRED)
SET(PTHREADS_INCLUDE "${PTHREADS_ROOT}/include")
find_path (PTHREADS_INCLUDE "pthread.h" NO_CMAKE_FIND_ROOT_PATH)

include_directories(${PCL_INCLUDE_DIRS};${PTHREADS_INCLUDE})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})

add_executable (compute_parameters compute_parameters.cpp)
target_link_libraries (compute_parameters ${PCL_LIBRARIES})

Любая помощь будет оценена.

...