我自己的ROS包我試圖讓自己的ROS包上Gumstix Overo工作。該項目的最終目標是從Caspa(相機)中獲取圖像並用ROS進行流式處理。爲此,我在Yocto項目中取得了最大的成功:Pocky,它使用BitBake交叉編譯工具鏈。爲此,我按照GitHub的README.md中的說明進行操作:https://github.com/gumstix/Gumstix-YoctoProject-Repo獲取有關Gumstix overo(BitBake的Yocto計劃)
僅供參考,實際閃爍和安裝的說明在官方Gumstix網站上更加清楚。
我是成功的,在所有的ROS元和額外使用以下命令編譯BitBake的項目:
$ bitbake gumstix-console-image
(需要相當長一段時間,很多很多的磁盤空間),後來,閃爍,安裝。
這裏是我的包,我試圖編譯:https://github.com/elikos/groundStationPublic我試圖保持文件夾儘可能簡單,以限制潛在的路徑問題,所以一切都在基地目錄...(非常醜,我知道)
這裏是我的CMakelist.txt:
cmake_minimum_required(VERSION 2.8.3)
project(groundStationPublic)
## Find catkin and any catkin packages
find_package(catkin REQUIRED COMPONENTS cv_bridge image_transport roscpp rospy std_msgs genmsg)
find_package(OpenCV REQUIRED)
## Declare ROS messages and services
#add_message_files(FILES Num.msg)
#add_service_files(FILES AddTwoInts.srv)
## Generate added messages and services
#generate_messages(DEPENDENCIES std_msgs)
## Declare a catkin package
catkin_package()
include_directories(include ${catkin_INCLUDE_DIRS} ${OpenCV_INCLUDE_DIRS})
add_executable(talker talker.cpp)
target_link_libraries(talker ${catkin_LIBRARIES})
#add_dependencies(talker beginner_tutorials_generate_messages_cpp)
add_executable(listener listener.cpp)
target_link_libraries(listener ${catkin_LIBRARIES})
#add_dependencies(listener beginner_tutorials_generate_messages_cpp)
add_executable(cornerDetection main.cpp ConerDetection.cpp LineDetection.cpp ImagePublisher.cpp)
target_link_libraries(cornerDetection ${catkin_LIBRARIES} ${OpenCV_LIBRARIES})
add_executable(bonPublisher bonPublisher.cpp)
target_link_libraries(bonPublisher ${catkin_LIBRARIES} ${OpenCV_LIBRARIES})
這裏是我的包BitBake的食譜:
DESCRIPTION = "Elikos groundstation code."
SECTION = "devel"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://package.xml;beginline=8;endline=8;md5=d566ef916e9dedc494f5f793a6690ba5"
DEPENDS = "roscpp rospy catkin std-msgs"
RDEPENDS_${PN} = "roscpp rospy std-msgs"
SRC_URI = "git://github.com/elikos/groundStationPublic.git"
SRCREV = "${AUTOREV}"
PV = "1.0.0+gitr${SRCPV}"
S = "${WORKDIR}/git"
inherit catkin
ROS_SPN = "groundStationPublic"
我已經找到了它~/yocto/poky/meta-ros/recipes-ros/groundStationPublic
如果我執行命令bitbake groundStationPublic
,一切編譯罰款。沒有錯誤。 (你可能會從x264_git一個錯誤,但正確的sourcerev是:SRCREV = 「ffc3ad4945da69f3caa2b40e4eed715a9a8d9526」)
最後,我的問題是:
- 哪裏是我的包在圖像中位於?
- 這不是在
/usr/share/
像我希望它是...
- 這不是在
- 我如何運行我的包,如果rosrun無法找到它? (可能是因爲它根本不存在)
- 我希望它不會停像
rosrun groundStationPublic talker
- 我希望它不會停像