4

誰かが私を助けてくれることを願っています。

Ubuntu でプロジェクトをビルドするために、単純な CMakeLists.txt があります。私はCMake 2.8.1を使用していますが、現時点ではこれがコードです:

cmake_minimum_required(VERSION 2.4.6)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /home/user/workspace)
include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake)

# Set the build type.  Options are:
#  Coverage       : w/ debug symbols, w/o optimization, w/ code-coverage
#  Debug          : w/ debug symbols, w/o optimization
#  Release        : w/o debug symbols, w/ optimization
#  RelWithDebInfo : w/ debug symbols, w/ optimization
#  MinSizeRel     : w/o debug symbols, w/ optimization, stripped binaries
#set(ROS_BUILD_TYPE RelWithDebInfo)

rosbuild_init()
find_package(OpenCV 2) 

#set the default path for built executables to the "bin" directory
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
#set the default path for built libraries to the "lib" directory
set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib)

#uncomment if you have defined messages
#rosbuild_genmsg()
#uncomment if you have defined services
#rosbuild_gensrv()

#common commands for building c++ executables and libraries
#rosbuild_add_library(${PROJECT_NAME} src/example.cpp)
#target_link_libraries(${PROJECT_NAME} another_library)
#rosbuild_add_boost_directories()
#rosbuild_link_boost(${PROJECT_NAME} thread)
#rosbuild_add_executable(example examples/example.cpp)
#target_link_libraries(example ${PROJECT_NAME})

include_directories(${CMAKE_SOURCE_DIR}/include
                                  ${OpenCV_INCLUDE_DIRS})

rosbuild_add_executable (RosPub src/paste.cpp) target_link_libraries (RosPub openni_driver usb-1.0 ${OpenCV_LIBS})

プロジェクトに opencv ライブラリを追加する必要があります。それらを追加しましたが、まだコードを機能させることができません。それは私にこのエラーを投稿し続けます:

「struct MyOpenNIExample::ImgContext」には「image」という名前のメンバーがありません</p>

それらのいくつかがあります。

find_package(OpenCV REQUIRED を CMakeLists.txt に追加した後、このエラーが発生します

Adjust CMAKE_MODULE_PATH to find FindOpenCV.cmake or set OpenCV_DIR to the
   directory containing a CMake configuration file for OpenCV.  The file will
   have one of the following names:

     OpenCVConfig.cmake
     opencv-config.cmake

どうすればいいの?私はAppleを使用しており、Ubuntu 10.04を使用しています。

私が必要なので

#include "opencv2\opencv.hpp"
#include "opencv2\highgui\highgui.hpp"
#include "opencv2\imgproc\imgproc.hpp"

追加した

      find_package(OpenCV 2), 
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} /home/user/workspace) and 


    include_directories(${CMAKE_SOURCE_DIR}/include
                                      ${OpenCV_INCLUDE_DIRS})
    target_link_libraries (RosPub openni_driver usb-1.0 ${OpenCV_LIBS})
4

2 に答える 2

1
#include "opencv2\opencv.hpp"
#include "opencv2\highgui\highgui.hpp" 
#include "opencv2\imgproc\imgproc.hpp" 

上記のインクルード ファイルは、ROS の vision_opencv に含まれています。それを含めるには、マニフェスト ファイルに opencv 依存関係を追加します。

それは助けになるでしょう。

于 2011-07-11T06:18:11.437 に答える
0
  1. 上記のリンクから FindOpenCV.cmake を取得し、コンピューターの任意の場所に配置します。
  2. cmake_minimum_required の後に set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} [FindOpenCV.cmake を配置したフォルダーへのパス]) 行を追加します。
  3. find_package(OpenCV) を CMakeLists.txt に追加します
  4. このステップでは、CMakeLists.txt で OpenCV_FOUND およびその他の OpenCV 変数を確認できます。
于 2011-07-08T03:37:24.570 に答える