Bir cmake projesi altında bir test de dahil olmak üzere bir sorun yaşıyorum. Projem böyle belirtilmiştir: TerrainMap İçi Dizincmake
TerrainMap
/ \
PointAccumulator heightQuadGrid
\
Test
CMakeLists.txt dosyası basitçe cmake sürümü proje adı özetliyor ve iki alt dizinleri içerir.
heightQuadGrid yılında CMakeLists.txt şuna benzer: anladığım kadarıyla heightQuadGrid adında bir kütüphane yapar
cmake_minimum_required(VERSION 2.8)
find_package(PCL 1.2 REQUIRED)
find_package(OpenCV REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_library(heightQuadGrid heightQuadGrid.cpp)
add_subdirectory(Test)
. Test CMakeLists.txt şuna benzer:
FIND_PACKAGE(PCL 1.2 REQUIRED)
FIND_PACKAGE(OpenCV REQUIRED)
FIND_PACKAGE(Boost COMPONENTS unit_test_framework REQUIRED)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
link_libraries(heightQuadGrid)
add_executable(heightQuadTreeTest heightQuadGridTest.cpp)
target_link_libraries (heightQuadTreeTest heightQuadGrid ${PCL_LIBRARIES} ${OpenCV_LIBS} ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY})
Ve nihayet cpp dosyası heightQuadGridTest.cpp bu dahil etti:
#include <heightQuadGrid/heightQuadGrid.h>
cmake düzgün çalıştığı ama projeyi yapmaya giderken o söyler bana bulamadıQuadGrid/heightQuadGrid.h
Başka bir çalışma projesinde çok benzer bir yaklaşım olarak gördüğüm anlaşma nedir?
Hayır öyle düşünmüyorum:
heightQuadTreeTest
yürütülebilir için cmakelists.txt dosyasında, iki dizinleri kadar gitmek ve bir içerme dizin olarak eklemek gerekir uygun şekilde bağlandığım library heightQuadGrid'den heightQuadGrid.h. –Yanılıyorsam düzeltin (dizin yapınız benim makinemde değil) ancak "uygun şekilde bağlanıyor", * linker * 'in nereye bakılacağını söyler ... dahil dizinleri * derleyicisine * nerede bakılacağını söyler. – tmpearce
Tamam Sanırım ne demek istediğimi anlıyorum, ama 2 dizini eklemeye ihtiyacım var mı yoksa heightQuadGrid.h dosyasının olduğu yer mi? Ve sonra nasıl yaptım, benim cpp dosyasına nasıl ekleyebilirim? –