Ask Your Question
0

Problem with the SSL CA cert (path? access rights?)

asked 2015-10-19 08:51:20 -0500

I got this error after the releasing the third party library into ROS ecosystem.

[ 25%] Performing download step (git clone) for 'ypspur'
cd /tmp/buildd/ros-indigo-ypspur-0.0.1-4saucy-20151019-0519/obj-i686-linux-gnu/ypspur/src && /usr/bin/cmake -P /tmp/buildd/ros-indigo-ypspur-0.0.1-4saucy-20151019-0519/obj-i686-linux-gnu/ypspur/tmp/ypspur-gitclone.cmake
Cloning into 'ypspur'...
fatal: unable to access 'https://github.com/DaikiMaekawa/ypspur/': Problem with the SSL CA cert (path? access rights?)
Cloning into 'ypspur'...
fatal: unable to access 'https://github.com/DaikiMaekawa/ypspur/': Problem with the SSL CA cert (path? access rights?)
Cloning into 'ypspur'...
fatal: unable to access 'https://github.com/DaikiMaekawa/ypspur/': Problem with the SSL CA cert (path? access rights?)
-- Had to git clone more than once:
      3 times.
CMake Error at /tmp/buildd/ros-indigo-ypspur-0.0.1-4saucy-20151019-0519/obj-i686-linux-gnu/ypspur/tmp/ypspur-gitclone.cmake:40 (message):
  Failed to clone repository: 'https://github.com/DaikiMaekawa/ypspur'

For more info. http://jenkins.ros.org/job/ros-indigo...

It's seem like the same error below, but I don't know how to resolve that.

http://lists.ros.org/pipermail/ros-re...

I guess something is wrong with the my code on CMakeLists.txt

cmake_minimum_required(VERSION 2.8.3)
project(ypspur)

include(ExternalProject)

message("CMAKE_DEVEL_PREFIX: ${CMAKE_DEVEL_PREFIX}")
message("CMAKE_INSTALL_PREFIX: ${CMAKE_INSTALL_PREFIX}")
message("CMAKE_PREFIX_PATH: ${CMAKE_PREFIX_PATH}")

ExternalProject_Add(${PROJECT_NAME}
    PREFIX ${CMAKE_CURRENT_BINARY_DIR}/ypspur
    GIT_REPOSITORY https://github.com/DaikiMaekawa/ypspur
    CONFIGURE_COMMAND <SOURCE_DIR>/configure --prefix=${CMAKE_INSTALL_PREFIX}
    BUILD_COMMAND $(MAKE)
    INSTALL_COMMAND echo "Install ypspur libs"
)

ExternalProject_Get_Property(${PROJECT_NAME} binary_dir)

add_custom_target(${PROJECT_NAME}-ins
    DEPENDS ${PROJECT_NAME}
    COMMAND echo DESTDIR IS $(DESTDIR) && $(MAKE) -C ${binary_dir} install
    COMMENT Performing ins step for '${PROJECT_NAME}'
)

install(CODE "execute_process(COMMAND \"${CMAKE_COMMAND}\" --build \"${CMAKE_BINARY_DIR}\" --target     ${PROJECT_NAME}-ins)")
install(FILES package.xml DESTINATION share/${PROJECT_NAME}/)
install(FILES cmake/YPSpurConfig.cmake DESTINATION share/${PROJECT_NAME}/cmake/)

You can find my repository here.

Any ideas?

edit retag flag offensive close merge delete

Comments

1

I'm not sure, but I don't think ExternalProject_Add(..) is supported on the buildfarm. Releasing a 3rd party library is documented here. Perhaps @Dirk Thomas can weigh in?

gvdhoorn gravatar image gvdhoorn  ( 2015-10-19 09:09:23 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2015-10-27 17:21:41 -0500

tfoote gravatar image

If you are pulling from an https url in your build step you need to have the ca certificates stated as a dependency. rosdep entry

Downloading the content of the package is not recommended during the build stage. The recommended approach is to pull in the repsitory via bloom. Which will make the sourcedeb contain all the source material and not rely on downloading content at build time. With a download at build time, building requires network access, and the server to be online with the original content. There is a tutorial for how to do this: http://wiki.ros.org/bloom/Tutorials/R...

edit flag offensive delete link more

Comments

@tfoote Thank you for your advice. Successful in releasing package. I added package.xml to the upstream repository and then passed the jenkins build. However, I have a problem about the output libraries.

Daiki Maekawa gravatar image Daiki Maekawa  ( 2015-11-01 16:55:03 -0500 )edit

In the local environment with https://github.com/DaikiMaekawa/ypspur , executable files, header files and libraries can be generated, but I couldn't find the output libraries in /opt/ros/indigo/lib at all even though I installed ypspur package from shadow-fix.

Daiki Maekawa gravatar image Daiki Maekawa  ( 2015-11-01 16:57:05 -0500 )edit

This CMakeLists.txt should be work even if user don't build the codes from source files. https://github.com/DaikiMaekawa/ypspu...

Do you have any idea?

Daiki Maekawa gravatar image Daiki Maekawa  ( 2015-11-01 17:05:35 -0500 )edit

Your install command on line 16 only echos and does not actually install anything. Thus the results won't have anything installed. You can test with an isolated workspace using the --install option.

tfoote gravatar image tfoote  ( 2015-11-02 02:14:52 -0500 )edit

I see. I did catkin_make_isolated --install for this package in my workspace and I found output libraries at CATKIN_WS/install_isolated/lib/. But anyway, I should fix INSTALL_COMMAND, right?

Daiki Maekawa gravatar image Daiki Maekawa  ( 2015-11-02 02:57:36 -0500 )edit

Maybe there's a problem with interplay with DESTDIR and CMAKE_INSTALL_PREFIX in the debian build. It does some other things differently with tempdirs etc. In the logs I see the "echo" command being invoked for the installation.

tfoote gravatar image tfoote  ( 2015-11-02 03:21:35 -0500 )edit

http://jenkins.ros.org/view/IbinT64/j... [ 87%] Performing install step for 'ypspur' cd /tmp/buildd/ros-indigo-ypspur-0.1.1-0trusty-20151028-1526/obj-x86_64-linux-gnu/ypspur/src/ypspur-build && echo "Install ypspur libs" Install ypspur libs

tfoote gravatar image tfoote  ( 2015-11-02 03:21:59 -0500 )edit

So let me get this straight, is this code correct? https://github.com/DaikiMaekawa/ypspu...

Daiki Maekawa gravatar image Daiki Maekawa  ( 2015-11-02 08:09:34 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2015-10-19 08:51:20 -0500

Seen: 2,103 times

Last updated: Oct 27 '15