Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use system installed yaml-cpp 0.6 if available #8

Merged
merged 3 commits into from
Aug 20, 2020

Conversation

seanyen
Copy link
Contributor

@seanyen seanyen commented Feb 27, 2020

On the environments (vcpkg, conda-forge, etc..) which already have the yaml-cpp, we can fallback to use the global one.

@seanyen
Copy link
Contributor Author

seanyen commented Feb 27, 2020

@mjbogusz Hi, I saw the original version you made a comment there about the ament limitation. Do you know is it still something true? And do you mind to share what's the original problem you are hitting?

CMakeLists.txt Outdated Show resolved Hide resolved
yaml_cpp_vendor-extras.cmake.in Show resolved Hide resolved
@mjbogusz
Copy link
Contributor

mjbogusz commented Mar 4, 2020

After short googling I've found the PR that this originated from - it was 2 years ago and happened in ros2-rviz: ros2/rviz#160 (I guess before yaml-cpp was split to separate vendor package)

As I recall and based on the aforementioned PR the issue originated from having the required version of yaml-cpp installed system-wise in /usr/include.
I'd advise testing this PR against such situation - Bionic provides 0.5.2 (and therefore requires this vendor package to build the library from source) but Focal (and Disco/Eoan) has 0.6.2 in the repo, which fulfills our requirements and should be used instead.

@ivanpauno
Copy link
Member

Thanks for the insights @mjbogusz.
I have a focal docker image, I will give this a try.

@mjbogusz
Copy link
Contributor

mjbogusz commented Mar 4, 2020

I may state the obvious, but make sure to check whether building packages depending on yaml_cpp_vendor works in both cases.

@ivanpauno
Copy link
Member

I may state the obvious, but make sure to check whether building packages depending on yaml_cpp_vendor works in both cases.

Yes, I did that. I first build depending packages without installing yaml_cpp with apt, and it worked.
I then installed it, deleted build/install folders, and tried again. It worked too.

I will give it a shot in bionic now, with yaml_cpp 0.5 installed, to see if it still builds 0.6.

@ivanpauno
Copy link
Member

I then installed it, deleted build/install folders, and tried again. It worked too.

I also checked that it was using the system library in that case, and not building it again.

@ivanpauno
Copy link
Member

ivanpauno commented Mar 4, 2020

I will give it a shot in bionic now, with yaml_cpp 0.5 installed, to see if it still builds 0.6.

Ok, it does the right thing too.
Will merge after green CI:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status (unrelated build warning, happening in nightlies too)
  • Windows Build Status

@ivanpauno
Copy link
Member

@seanyen Something went wrong on Windows, I don't have time to investigate right now.
Can you take a look?

@seanyen
Copy link
Contributor Author

seanyen commented Mar 4, 2020

@ivanpauno hmm, on the Windows build agent, it found yaml-cpp v0.6. Many of tests failed at STATUS_DLL_NOT_FOUND (0xC0000135). My guess would be whatever the found yaml-cpp binaries are not in the system %PATH%, so problems happen at the runtime.

@brawner It is a long shot, but just curious, do you know if the Windows agent has yaml-cpp installed?

[93.890s] Not searching for unused variables given on the command line.
[94.031s] -- Selecting Windows SDK version 10.0.17763.0 to target Windows 10.0.18362.
[103.609s] -- The C compiler identification is MSVC 19.24.28316.0
[108.578s] -- The CXX compiler identification is MSVC 19.24.28316.0
[108.625s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[113.359s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[113.375s] -- Detecting C compiler ABI info
[115.109s] -- Detecting C compiler ABI info - done
[115.109s] -- Detecting C compile features
[115.109s] -- Detecting C compile features - done
[115.109s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[118.250s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[118.250s] -- Detecting CXX compiler ABI info
[120.047s] -- Detecting CXX compiler ABI info - done
[120.047s] -- Detecting CXX compile features
[120.047s] -- Detecting CXX compile features - done
[120.062s] -- Found ament_cmake: 0.8.1 (C:/J/workspace/ci_windows/ws/install/share/ament_cmake/cmake)
[120.297s] -- Found PythonInterp: C:/Python37/python.exe (found suitable version "3.7.5", minimum required is "3") 
[120.297s] -- Using PYTHON_EXECUTABLE: C:/Python37/python.exe
[121.968s] -- Found yaml-cpp 0.6.2
[122.609s] -- Configuring done
[122.859s] -- Generating done
[122.875s] -- Build files have been written to: C:/J/workspace/ci_windows/ws/build/yaml_cpp_vendor
[123.156s] Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Framework
[123.156s] Copyright (C) Microsoft Corporation. All rights reserved.
[123.156s] 
[124.375s]   Checking Build System
[125.031s]   Building Custom Rule C:/J/workspace/ci_windows/ws/src/ros2/yaml_cpp_vendor/CMakeLists.txt
[125.390s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/ament_index/resource_index/package_run_dependencies/yaml_cpp_vendor
[125.390s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/ament_index/resource_index/parent_prefix_path/yaml_cpp_vendor
[125.406s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/environment/ament_prefix_path.bat
[125.406s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/environment/ament_prefix_path.dsv
[125.406s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/environment/path.bat
[125.422s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/environment/path.dsv
[125.437s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/local_setup.bat
[125.437s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/local_setup.dsv
[125.453s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/package.dsv
[125.453s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/ament_index/resource_index/packages/yaml_cpp_vendor
[125.453s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/cmake/yaml_cpp_vendor-extras.cmake
[125.453s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig.cmake
[125.468s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig-version.cmake
[125.468s] -- Installing: C:/J/workspace/ci_windows/ws/install/share/yaml_cpp_vendor/package.xml
---

@brawner
Copy link

brawner commented Mar 4, 2020

I'm not sure about the bare-metal machines, but the container builds will become the default today and I don't think it's installed there.

How is it installed on windows? Can it be added to the dockerfile?

https://github.com/ros2/ci/blob/master/windows_docker_resources/Dockerfile.msvc2019

@seanyen
Copy link
Contributor Author

seanyen commented Mar 4, 2020

How is it installed on windows? Can it be added to the dockerfile?

@brawner, actually this is my question too. :) I don't know how does the bare-metal one get prepared and don't know what's the environment there. However, sounds like now we are switching to container build so the environment will be cleaner.

Just curious, is @ivanpauno able to kick off a container build against this change or we just wait? I would like to see if this problem manifest or not on the new environment.

@brawner
Copy link

brawner commented Mar 4, 2020

ci_windows is now officially built in a container, so rebuilding straight away is sufficient!

Build Status

@ivanpauno
Copy link
Member

ivanpauno commented Mar 5, 2020

@ivanpauno hmm, on the Windows build agent, it found yaml-cpp v0.6. Many of tests failed at STATUS_DLL_NOT_FOUND (0xC0000135). My guess would be whatever the found yaml-cpp binaries are not in the system %PATH%, so problems happen at the runtime.

The whole point is that it should find the system package, and work correctly when it does find it.
So, I'm not going to merge until we confirm it does work as intended on Windows.

@seanyen
Copy link
Contributor Author

seanyen commented Mar 12, 2020

The whole point is that it should find the system package, and work correctly when it does find it.
So, I'm not going to merge until we confirm it does work as intended on Windows.

@ivanpauno I am not sure what's the reference environment acceptable for this validation. However, I can provide some information on the conda packages I am curating lately. For who is not familiar with conda-forge, which is a community-led package repository for multiple platforms, and I am prototyping ROS 2 for Windows based on the packages vendor-ed on conda-forge repository.

In my settings, I have ros-eloquent-desktop built out on this sandbox channel https://anaconda.org/ros-playground: (and one of my goal is in favor of conda-forge package if it exists. For example, yaml-cpp on conda-forge.)

And for this validation, I can conda create -n ros2 ros-eloquent-ament-cmake ros-eloquent-ros-workspace colcon-common-extensions to create a virtual conda environment with all the required tools for yaml_cpp_vendor, then if I just do a colcon build without install yaml-cpp in my environment. It outputs things like:

CLICK ME

Starting >>> yaml_cpp_vendor
--- output: yaml_cpp_vendor
[0.078s] -- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
[1.078s] -- The C compiler identification is MSVC 19.24.28316.0
[1.703s] -- The CXX compiler identification is MSVC 19.24.28316.0
[1.734s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[2.281s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[2.297s] -- Detecting C compiler ABI info
[2.859s] -- Detecting C compiler ABI info - done
[2.859s] -- Detecting C compile features
[2.859s] -- Detecting C compile features - done
[2.875s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[3.437s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[3.437s] -- Detecting CXX compiler ABI info
[4.000s] -- Detecting CXX compiler ABI info - done
[4.016s] -- Detecting CXX compile features
[4.016s] -- Detecting CXX compile features - done
[4.016s] -- Found ament_cmake: 0.8.2 (C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake/cmake)
[4.125s] -- Found PythonInterp: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/python.exe (found suitable version "3.7.6", minimum required is "3")
[4.125s] -- Using PYTHON_EXECUTABLE: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/python.exe
[4.719s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/environment/ament_cmake_environment_package_hook.cmake
[4.719s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/environment_hooks/ament_cmake_environment_hooks_package_hook.cmake
[4.734s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/index/ament_cmake_index_package_hook.cmake
[4.750s] -- Configuring done
[4.859s] -- Generating done
[4.875s] -- Build files have been written to: C:/workspace/yaml_ws/build/yaml_cpp_vendor
[4.969s] Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Framework
[4.969s] Copyright (C) Microsoft Corporation. All rights reserved.
[4.969s]
[5.234s]   Checking Build System
[5.406s]   Creating directories for 'yaml_cpp-0f9a586'
[5.594s]   Building Custom Rule C:/workspace/yaml_ws/src/yaml_cpp_vendor/CMakeLists.txt
[5.625s]   Performing download step (download, verify and extract) for 'yaml_cpp-0f9a586'
[5.641s]   -- Downloading...
[5.656s]      dst='C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/0f9a586ca1dc29c2ecb8dd715a315b93e3f40f79.zip'
[5.656s]      timeout='600 seconds'
[5.656s]   -- Using src='https://github.com/jbeder/yaml-cpp/archive/0f9a586ca1dc29c2ecb8dd715a315b93e3f40f79.zip'
[6.031s]   -- [download 100% complete]
[6.969s]   -- verifying file...
[6.969s]          file='C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/0f9a586ca1dc29c2ecb8dd715a315b93e3f40f79.zip'
[6.984s]   -- Downloading... done
[7.031s]   -- extracting...
[7.031s]        src='C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/0f9a586ca1dc29c2ecb8dd715a315b93e3f40f79.zip'
[7.031s]        dst='C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/yaml_cpp-0f9a586'
[7.031s]   -- extracting... [tar xfz]
[7.312s]   -- extracting... [analysis]
[7.312s]   -- extracting... [rename]
[7.312s]   -- extracting... [clean up]
[7.328s]   -- extracting... done
[7.359s]   No update step for 'yaml_cpp-0f9a586'
[7.406s]   No patch step for 'yaml_cpp-0f9a586'
[7.453s]   Performing configure step for 'yaml_cpp-0f9a586'
[11.562s]   -- yaml_cpp-0f9a586 configure command succeeded.  See also C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/yaml_cpp-0f9a586-stamp/yaml_cpp-0f9a586-configure-*.log
[11.594s]   Performing build step for 'yaml_cpp-0f9a586'
[16.094s]   -- yaml_cpp-0f9a586 build command succeeded.  See also C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp-0f9a586-prefix/src/yaml_cpp-0f9a586-stamp/yaml_cpp-0f9a586-build-*.log
[16.125s]   Performing install step for 'yaml_cpp-0f9a586'
[16.203s]   Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Framework
[16.203s]   Copyright (C) Microsoft Corporation. All rights reserved.
[16.203s]
[16.594s]     yaml-cpp.vcxproj -> C:\workspace\yaml_ws\build\yaml_cpp_vendor\yaml_cpp-0f9a586-prefix\src\yaml_cpp-0f9a586-build\Release\yaml-cpp.dll
[16.734s]     -- Install configuration: "Release"
[16.734s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/lib/yaml-cpp.lib
[16.734s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/bin/yaml-cpp.dll
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/anchor.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/binary.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/contrib
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/contrib/anchordict.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/contrib/graphbuilder.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/dll.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/emitfromevents.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/emitter.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/emitterdef.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/emittermanip.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/emitterstyle.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/eventhandler.h
[16.750s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/exceptions.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/mark.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/convert.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/bool_type.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/impl.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/iterator.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/iterator_fwd.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/memory.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/node.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/node_data.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/node_iterator.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/detail/node_ref.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/emit.h
[16.766s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/impl.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/iterator.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/node.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/parse.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/ptr.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/node/type.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/noncopyable.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/null.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/ostream_wrapper.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/parser.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/stlemitter.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/traits.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/include/yaml-cpp/yaml.h
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/CMake/yaml-cpp-config.cmake
[16.781s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/CMake/yaml-cpp-config-version.cmake
[16.797s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/CMake/yaml-cpp-targets.cmake
[16.797s]     -- Installing: C:/workspace/yaml_ws/build/yaml_cpp_vendor/yaml_cpp_install/CMake/yaml-cpp-targets-release.cmake
[16.844s]   Completed 'yaml_cpp-0f9a586'
[16.984s]   Building Custom Rule C:/workspace/yaml_ws/src/yaml_cpp_vendor/CMakeLists.txt
[17.094s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor
[17.094s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/bin
[17.094s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/bin/yaml-cpp.dll
[17.094s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/CMake
[17.094s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/CMake/yaml-cpp-config-version.cmake
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/CMake/yaml-cpp-config.cmake
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/CMake/yaml-cpp-targets-release.cmake
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/CMake/yaml-cpp-targets.cmake
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/anchor.h
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/binary.h
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/contrib
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/contrib/anchordict.h
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/contrib/graphbuilder.h
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/dll.h
[17.109s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/emitfromevents.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/emitter.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/emitterdef.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/emittermanip.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/emitterstyle.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/eventhandler.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/exceptions.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/mark.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/convert.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/bool_type.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/impl.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/iterator.h
[17.125s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/iterator_fwd.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/memory.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/node.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/node_data.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/node_iterator.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/detail/node_ref.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/emit.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/impl.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/iterator.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/node.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/parse.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/ptr.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/node/type.h
[17.141s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/noncopyable.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/null.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/ostream_wrapper.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/parser.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/stlemitter.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/traits.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/include/yaml-cpp/yaml.h
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/lib
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/opt/yaml_cpp_vendor/lib/yaml-cpp.lib
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/yaml_cpp_vendor_library_path.bat
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/yaml_cpp_vendor_library_path.dsv
[17.156s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/package_run_dependencies/yaml_cpp_vendor
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/parent_prefix_path/yaml_cpp_vendor
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/ament_prefix_path.bat
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/ament_prefix_path.dsv
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/path.bat
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/path.dsv
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/local_setup.bat
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/local_setup.dsv
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/package.dsv
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/packages/yaml_cpp_vendor
[17.172s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendor-extras.cmake
[17.187s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig.cmake
[17.187s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig-version.cmake
[17.187s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/package.xml
---
Finished <<< yaml_cpp_vendor [17.2s]

Summary: 1 package finished [17.5s]

And after doing conda install yaml-cpp, then rebuild the yaml_cpp_vendor again. Now it outputs like below:

CLICK ME

Starting >>> yaml_cpp_vendor
--- output: yaml_cpp_vendor
[0.078s] -- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.18363.
[1.094s] -- The C compiler identification is MSVC 19.24.28316.0
[1.703s] -- The CXX compiler identification is MSVC 19.24.28316.0
[1.734s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[2.297s] -- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[2.297s] -- Detecting C compiler ABI info
[2.875s] -- Detecting C compiler ABI info - done
[2.875s] -- Detecting C compile features
[2.875s] -- Detecting C compile features - done
[2.890s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe
[3.469s] -- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/BuildTools/VC/Tools/MSVC/14.24.28314/bin/Hostx64/x64/cl.exe -- works
[3.469s] -- Detecting CXX compiler ABI info
[4.031s] -- Detecting CXX compiler ABI info - done
[4.031s] -- Detecting CXX compile features
[4.031s] -- Detecting CXX compile features - done
[4.047s] -- Found ament_cmake: 0.8.2 (C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake/cmake)
[4.140s] -- Found PythonInterp: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/python.exe (found suitable version "3.7.6", minimum required is "3")
[4.140s] -- Using PYTHON_EXECUTABLE: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/python.exe
[4.406s] -- Found yaml-cpp 0.6.3
[4.500s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/environment/ament_cmake_environment_package_hook.cmake
[4.500s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/environment_hooks/ament_cmake_environment_hooks_package_hook.cmake
[4.515s] -- _extension_file: C:/Users/tzuhs/Miniconda3/envs/ros2_yaml/Library/share/ament_cmake_core/cmake/index/ament_cmake_index_package_hook.cmake
[4.531s] -- Configuring done
[4.609s] -- Generating done
[4.609s] -- Build files have been written to: C:/workspace/yaml_ws/build/yaml_cpp_vendor
[4.703s] Microsoft (R) Build Engine version 16.4.0+e901037fe for .NET Framework
[4.703s] Copyright (C) Microsoft Corporation. All rights reserved.
[4.703s]
[4.969s]   Checking Build System
[5.140s]   Building Custom Rule C:/workspace/yaml_ws/src/yaml_cpp_vendor/CMakeLists.txt
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/package_run_dependencies/yaml_cpp_vendor
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/parent_prefix_path/yaml_cpp_vendor
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/ament_prefix_path.bat
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/ament_prefix_path.dsv
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/path.bat
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/environment/path.dsv
[5.250s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/local_setup.bat
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/local_setup.dsv
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/package.dsv
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/ament_index/resource_index/packages/yaml_cpp_vendor
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendor-extras.cmake
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig.cmake
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/cmake/yaml_cpp_vendorConfig-version.cmake
[5.265s] -- Installing: C:/workspace/yaml_ws/install/yaml_cpp_vendor/share/yaml_cpp_vendor/package.xml
---
Finished <<< yaml_cpp_vendor [5.31s]

Summary: 1 package finished [5.55s]

@ivanpauno
Copy link
Member

And after doing conda install yaml-cpp, then rebuild the yaml_cpp_vendor again. Now it outputs like below:

That's ok, but does rviz_common and rosbag_storage tests pass when the local yaml installation is found?

@claireyywang
Copy link

@seanyen friendly ping

@seanyen
Copy link
Contributor Author

seanyen commented Mar 19, 2020

@ivanpauno Sorry for the late on this. I did colcon test against rviz_common and rosbag_storage and the results look good to me. There are some uncrustify and copyright failures. I don't think they are related to this change. Except for that, all other tests look good.

test.log

P.S., I am using https://github.com/ros2-gbp/rviz-release/tree/release/eloquent/rviz_common/7.0.4-1 and https://github.com/ros2-gbp/rosbag2-release/tree/release/eloquent/rosbag2_storage/0.2.4-1 as the targets.

@hidmic hidmic added the enhancement New feature or request label Apr 9, 2020
@seanyen
Copy link
Contributor Author

seanyen commented Aug 13, 2020

@ivanpauno friendly ping.

Copy link
Member

@ivanpauno ivanpauno left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Sorry for the delay @seanyen

@ivanpauno
Copy link
Member

@seanyen can you rebase? I will run CI after that. Thanks!

@seanyen
Copy link
Contributor Author

seanyen commented Aug 20, 2020

@ivanpauno rebased!

@ivanpauno
Copy link
Member

CI:

  • Linux Build Status
  • Linux-aarch64 Build Status
  • macOS Build Status
  • Windows Build Status

@ivanpauno ivanpauno changed the title Attempt to find yaml-cpp 0.6 before build. Use system installed yaml-cpp 0.6 if available Aug 20, 2020
@ivanpauno ivanpauno merged commit b11d00f into ros2:master Aug 20, 2020
@ivanpauno
Copy link
Member

Thanks for the contribution @seanyen !!

@dirk-thomas
Copy link
Member

This PR seems to have introduced a regression on macOS: see #14.

ivanpauno added a commit that referenced this pull request Aug 24, 2020
ivanpauno added a commit that referenced this pull request Aug 24, 2020
This reverts commit b11d00f.

Signed-off-by: Ivan Santiago Paunovic <[email protected]>
ivanpauno added a commit that referenced this pull request Aug 25, 2020
This reverts commit b11d00f.

Signed-off-by: Ivan Santiago Paunovic <[email protected]>
ivanpauno added a commit that referenced this pull request Aug 25, 2020
ivanpauno added a commit that referenced this pull request Aug 25, 2020
ivanpauno added a commit that referenced this pull request Sep 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants