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

Add recipe for gz-sim-yarp-plugins package #25910

Merged
merged 4 commits into from
Apr 9, 2024

Conversation

xela-95
Copy link
Contributor

@xela-95 xela-95 commented Mar 29, 2024

gz-sim-yarp-plugins are a set of plugins that expose the functionality of the gz-sim simulator via YARP devices. It is a spiritual successor to gazebo-yarp-plugins package, already packaged in conda-forge (see https:/conda-forge/gazebo-yarp-plugins-feedstock).

For consistency with gazebo-yarp-plugins feedstock, the proposed recipe adds two different packages:

  • libgz-sim-yarp-plugins: This is the package that is meant to be used if the package is consumed as a C/C++ library, and linked to a downstream project. At the moment the package does not install any header, but as soon as it will do it, this package will get a run_exports section. This package name contains the lib prefix as requested in Add recipe for libmatio-cpp #19764 (review) for C/C++ libraries.
  • gz-sim-yarp-plugins: This is the package is an empty package that depends on libgz-sim-yarp-plugins and that is meant to be used if the plugins are just loaded at runtime in a downstream project, but not linked at compile time to any downstream project.

The feedstock is named gz-sim-yarp-plugins to match the repo name and support different package outputs names in the future.

Checklist

  • Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • License file is packaged (see here for an example).
  • Source is from official source.
  • Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • If static libraries are linked in, the license of the static library is packaged.
  • Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • Build number is 0.
  • A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • When in trouble, please check our knowledge base documentation before pinging a team.

@xela-95
Copy link
Contributor Author

xela-95 commented Mar 29, 2024

CC @traversaro

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/gz-sim-yarp-plugins) and found some lint.

Here's what I've got...

For recipes/gz-sim-yarp-plugins:

  • The following maintainers have not yet confirmed that they are willing to be listed here: traversaro. Please ask them to comment on this PR if they are.

@traversaro
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/gz-sim-yarp-plugins) and found some lint.

Here's what I've got...

For recipes/gz-sim-yarp-plugins:

* The following maintainers have not yet confirmed that they are willing to be listed here: traversaro. Please ask them to comment on this PR if they are.

I confirm I am ok in being a mantainer of this package.

@xela-95
Copy link
Contributor Author

xela-95 commented Mar 29, 2024

@traversaro the CI is failing for missing openGL:

-- Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_INCLUDE_DIR OpenGL) 
-- Looking for gz-msgs10 -- found version 10.1.0
CMake Error at /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/Qt5Gui/Qt5GuiConfigExtras.cmake:9 (message):
  Failed to find "GL/gl.h" in
  "/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/include;/usr/include/libdrm".
Call Stack (most recent call first):
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake:233 (include)
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/Qt5Quick/Qt5QuickConfig.cmake:100 (find_package)
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package)
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/gz-gui8/gz-gui8-config.cmake:101 (find_package)
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/lib/cmake/gz-sim8/gz-sim8-config.cmake:98 (find_package)
  /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1711718150474/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place/share/cmake/gz-cmake3/cmake3/GzFindPackage.cmake:243 (find_package)
  CMakeLists.txt:12 (gz_find_package)

do you think I have to add other libraries to the yum_requirements.txt?

@traversaro
Copy link
Contributor

do you think I have to add other libraries to the yum_requirements.txt?

Yes, mesa-libGL-devel, not sure it is not necessary for gazebo-yarp-plugins .

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/gz-sim-yarp-plugins) and found it was in an excellent condition.

@xela-95
Copy link
Contributor Author

xela-95 commented Mar 29, 2024

Unfortunately the issue with openGL is persisting. Is the yum_requirements.txt file automatically found by the building process or should be linked somewhere?

@traversaro
Copy link
Contributor

Unfortunately the issue with openGL is persisting. Is the yum_requirements.txt file automatically found by the building process or should be linked somewhere?

The yum_requirements.txt are correctly found, you can check the output of the yum install process in the log:

2024-03-29T14:48:23.3180234Z Installed:
2024-03-29T14:48:23.3180729Z   libXdamage.x86_64 0:1.1.4-4.1.el7   libXext.x86_64 0:1.3.3-3.el7             
2024-03-29T14:48:23.3181294Z   libXxf86vm.x86_64 0:1.1.4-1.el7     mesa-dri-drivers.x86_64 0:18.3.4-12.el7_9
2024-03-29T14:48:23.3181840Z   mesa-libGL.x86_64 0:18.3.4-12.el7_9 mesa-libGL-devel.x86_64 0:18.3.4-12.el7_9

Something else is going on. I guess the real error is:

-- Could NOT find OpenGL (missing: OPENGL_opengl_LIBRARY OPENGL_INCLUDE_DIR OpenGL) 

in gz-sim we are adding mesa-dri-drivers (see https:/conda-forge/gz-sim-feedstock/blob/main/recipe/yum_requirements.txt#L2), I guess we can try to add that or libglvnd-opengl (that in theory it seems to be more appropriate). See also https:/conda-forge/opencv-feedstock/blob/72fd17b65d4925b22a2053e7c56b9bf80e0b5ac8/recipe/yum_requirements.txt#L5 .

@xela-95
Copy link
Contributor Author

xela-95 commented Mar 29, 2024

in gz-sim we are adding mesa-dri-drivers (see https:/conda-forge/gz-sim-feedstock/blob/main/recipe/yum_requirements.txt#L2), I guess we can try to add that or libglvnd-opengl (that in theory it seems to be more appropriate). See also https:/conda-forge/opencv-feedstock/blob/72fd17b65d4925b22a2053e7c56b9bf80e0b5ac8/recipe/yum_requirements.txt#L5 .

Tried using libglvnd-opengl instead of mesa-dri-drivers but it fails with the same error.

@traversaro
Copy link
Contributor

Sorry, I was confused. cdt are kind of special packages, and the yum_requirements.txt are only relevant for what regards loading those libraries, for example for running tests or similar, for compilation or Cmake configuration, we need to add CDT dependencies to the meta.yaml, as documented in https://conda-forge.org/docs/maintainer/knowledge_base/#libgl .

@xela-95
Copy link
Contributor Author

xela-95 commented Apr 3, 2024

@traversaro now the openGL issue seems to be solved.

We are getting different errors on the CI for different OS:

Linux:

The following tests FAILED:
	  1 - ForceTorqueTest (Failed)
	  3 - LaserTest (SEGFAULT)
	  4 - CameraTest (SEGFAULT)

Windows

Error on gtest dependency

Details
[36/70] Building CXX object _deps\googletest-build\googlemock\CMakeFiles\gmock.dir\__\googletest\src\gtest-all.cc.obj
FAILED: _deps/googletest-build/googlemock/CMakeFiles/gmock.dir/__/googletest/src/gtest-all.cc.obj 
C:\PROGRA~1\MICROS~2\2022\ENTERP~1\VC\Tools\MSVC\1429~1.301\bin\HostX64\x64\cl.exe  /nologo /TP -DGTEST_CREATE_SHARED_LIBRARY=1 -Dgmock_EXPORTS -IC:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googlemock\include -IC:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googlemock -IC:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include -IC:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest /DWIN32 /D_WINDOWS /GR  /O2 /Ob2 /DNDEBUG -MD -GS -W4 -WX -wd4251 -wd4275 -nologo -J -Zi -D_UNICODE -DUNICODE -DWIN32 -D_WIN32 -DSTRICT -DWIN32_LEAN_AND_MEAN -wd4702 -DGTEST_HAS_PTHREAD=1 -EHsc -D_HAS_EXCEPTIONS=1 /showIncludes /Fo_deps\googletest-build\googlemock\CMakeFiles\gmock.dir\__\googletest\src\gtest-all.cc.obj /Fdbin\gmock.pdb /FS -c C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src\gtest-all.cc
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include\gtest/internal/gtest-port.h(1170): error C3861: 'nanosleep': identifier not found
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(491): error C2065: 'runnable': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(492): error C2065: 'thread_can_start': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(504): error C2678: binary '->': no operator found which takes a left-hand operand of type 'std::unique_ptr' (or there is no acceptable conversion)
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.29.30133\include\memory(3214): note: could be '_Get_deleter_pointer_type<_Ty,remove_reference<_Ty1>::type,void>::type std::unique_ptr<_Ty,_Dx>::operator ->(void) noexcept const'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(504): note: while trying to match the argument list '(std::unique_ptr)'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(504): error C2039: 'Run': is not a member of 'std::unique_ptr'
C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Tools\MSVC\14.29.30133\include\memory(3123): note: see declaration of 'std::unique_ptr'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(516): error C2027: use of undefined type 'testing::internal::ThreadWithParamBase'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include\gtest/internal/gtest-port.h(1284): note: see declaration of 'testing::internal::ThreadWithParamBase'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(516): error C2065: 'Runnable': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(516): error C2065: 'runnable': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(517): error C2065: 'thread_can_start': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(517): error C2275: 'testing::internal::Notification': illegal use of this type as an expression
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include\gtest/internal/gtest-port.h(1185): note: see declaration of 'testing::internal::Notification'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(517): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(518): error C2059: syntax error: ':'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(518): error C2065: 'runnable': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(519): error C2065: 'thread_can_start': undeclared identifier
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(519): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(519): error C2059: syntax error: '{'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(519): error C2143: syntax error: missing ';' before '{'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(519): error C2447: '{': missing function header (old-style formal list?)
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(522): error C2027: use of undefined type 'testing::internal::ThreadWithParamBase'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include\gtest/internal/gtest-port.h(1284): note: see declaration of 'testing::internal::ThreadWithParamBase'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(522): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(523): error C3861: 'Join': identifier not found
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(524): warning C4508: 'testing::internal::{dtor}': function should return a value; 'void' return type assumed
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\src/gtest-port.cc(526): error C2027: use of undefined type 'testing::internal::ThreadWithParamBase'
C:\bld\gz-sim-yarp-plugins-split_1711906035713\work\build\_deps\googletest-src\googletest\include\gtest/internal/gtest-port.h(1284): note: see declaration of 'testing::internal::ThreadWithParamBase'

macOS

Some strange errors with clock type:

Details
[7/71] Building CXX object plugins/robotinterface/CMakeFiles/gz-sim-yarp-robotinterface-system.dir/RobotInterface.cc.o
FAILED: plugins/robotinterface/CMakeFiles/gz-sim-yarp-robotinterface-system.dir/RobotInterface.cc.o 
/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_build_env/bin/x86_64-apple-darwin13.4.0-clang++ -DHAVE_PYBIND11 -DPROTOBUF_USE_DLLS -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICKCONTROLS2_LIB -DQT_QUICK_LIB -DQT_WIDGETS_LIB -Dgz_sim_yarp_robotinterface_system_EXPORTS -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/libraries/singleton-devices -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/libraries/common -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/plugin2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/utils2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/sim8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/math7 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/common5 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/fuel_tools9 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/gui8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/transport13 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtCore -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/./mkspecs/macx-clang -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQml -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtNetwork -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQuick -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtGui -isystem /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Headers -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQmlModels -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQuickControls2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtWidgets -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/physics7 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/eigen3 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/rendering8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/sdformat14 -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include -fdebug-prefix-map=/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work=/usr/local/src/conda/libgz-sim-yarp-plugins-0.1.0 -fdebug-prefix-map=/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla=/usr/local/src/conda-prefix -D_LIBCPP_DISABLE_AVAILABILITY -O3 -DNDEBUG -isysroot /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -fPIC -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include -fPIC -MD -MT plugins/robotinterface/CMakeFiles/gz-sim-yarp-robotinterface-system.dir/RobotInterface.cc.o -MF plugins/robotinterface/CMakeFiles/gz-sim-yarp-robotinterface-system.dir/RobotInterface.cc.o.d -o plugins/robotinterface/CMakeFiles/gz-sim-yarp-robotinterface-system.dir/RobotInterface.cc.o -c /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/robotinterface/RobotInterface.cc
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/robotinterface/RobotInterface.cc:5:
[11/71] Building CXX object plugins/laser/CMakeFiles/gz-sim-yarp-laser-system.dir/Laser.cc.o
FAILED: plugins/laser/CMakeFiles/gz-sim-yarp-laser-system.dir/Laser.cc.o 
/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_build_env/bin/x86_64-apple-darwin13.4.0-clang++ -DHAVE_PYBIND11 -DPROTOBUF_USE_DLLS -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_QUICKCONTROLS2_LIB -DQT_QUICK_LIB -DQT_WIDGETS_LIB -Dgz_sim_yarp_laser_system_EXPORTS -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/laser -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/libraries/singleton-devices -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/laser/singleton -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/libraries/common -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/plugin2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/utils2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/sim8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/math7 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/common5 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/fuel_tools9 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/gui8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/transport13 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtCore -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/./mkspecs/macx-clang -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQml -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtNetwork -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQuick -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtGui -isystem /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks/OpenGL.framework/Headers -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQmlModels -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtQuickControls2 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/qt/QtWidgets -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/physics7 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/eigen3 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/rendering8 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/sdformat14 -march=core2 -mtune=haswell -mssse3 -ftree-vectorize -fPIC -fstack-protector-strong -O2 -pipe -stdlib=libc++ -fvisibility-inlines-hidden -fmessage-length=0 -isystem /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include -fdebug-prefix-map=/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work=/usr/local/src/conda/libgz-sim-yarp-plugins-0.1.0 -fdebug-prefix-map=/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla=/usr/local/src/conda-prefix -D_LIBCPP_DISABLE_AVAILABILITY -O3 -DNDEBUG -isysroot /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -mmacosx-version-min=10.9 -fPIC -I/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include -fPIC -MD -MT plugins/laser/CMakeFiles/gz-sim-yarp-laser-system.dir/Laser.cc.o -MF plugins/laser/CMakeFiles/gz-sim-yarp-laser-system.dir/Laser.cc.o.d -o plugins/laser/CMakeFiles/gz-sim-yarp-laser-system.dir/Laser.cc.o -c /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/laser/Laser.cc
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/laser/Laser.cc:4:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs.hh:23:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/convert/AxisAlignedBox.hh:20:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/convert/Vector3.hh:21:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/vector3d.pb.h:12:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/details/vector3d.pb.h:26:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/google/protobuf/io/coded_stream.h:111:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/absl/strings/cord.h:91:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/absl/strings/internal/cordz_info.h:31:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/absl/synchronization/mutex.h:75:
/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/absl/synchronization/internal/kernel_timeout.h:94:45: error: unknown type name 'clockid_t'; did you mean 'clock_t'?
  struct timespec MakeClockAbsoluteTimespec(clockid_t c) const;
                                            ^
/Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/sys/_types/_clock_t.h:30:33: note: 'clock_t' declared here
typedef __darwin_clock_t        clock_t;
                                ^
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/work/plugins/laser/Laser.cc:4:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs.hh:23:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/convert/AxisAlignedBox.hh:20:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/convert/Vector3.hh:21:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/vector3d.pb.h:12:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/gz/msgs10/gz/msgs/details/vector3d.pb.h:33:
In file included from /Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/google/protobuf/message.h:109:
/Users/runner/Miniforge3/conda-bld/gz-sim-yarp-plugins-split_1711905907727/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_pla/include/google/protobuf/map.h:694:31: error: use of undeclared identifier 'CLOCK_UPTIME_RAW'
    s = clock_gettime_nsec_np(CLOCK_UPTIME_RAW);
                              ^

@traversaro
Copy link
Contributor

For the linux failure tests, we have our own upstream problems (see robotology/gz-sim-yarp-plugins#75), so I would just manually enable in ctest (via the -R ctest option) the tests that we know that are reliable passing.

For Windows, it seems that somehow we are using mingw compilers instead of msvc? Let me check.

macOS are probably some problem of old SDK and/or old deployment target being used, see conda-forge/protozfits-feedstock#24 (comment) for a related error. You can add a conda_build_config.yaml file to specify a greater value, see for example https:/conda-forge/gazebo-yarp-plugins-feedstock/blob/4258eb6eda82a40d07840f1573ada25303a25143/recipe/conda_build_config.yaml and https://conda-forge.org/docs/maintainer/knowledge_base/#requiring-newer-macos-sdks for generic docs.

@traversaro
Copy link
Contributor

For Windows, it seems that somehow we are using mingw compilers instead of msvc? Let me check.

I am not sure what is happening, but I guess that is just easier to install gtest as any other dependency: robotology/gz-sim-yarp-plugins#139 .

@xela-95
Copy link
Contributor Author

xela-95 commented Apr 3, 2024

For Windows, it seems that somehow we are using mingw compilers instead of msvc? Let me check.

I am not sure what is happening, but I guess that is just easier to install gtest as any other dependency: robotology/gz-sim-yarp-plugins#139 .

Thanks! I put the gtest dependency in the host requirements, since it is also used in the build_cxx.sh script.

@xela-95
Copy link
Contributor Author

xela-95 commented Apr 3, 2024

With the last commits, the issue mentioned in #25910 (comment) are gone.

Now I'm getting the same errors for all OSs:

  • Some warnings related to paths outside the prefix:
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)
Warning: rpath /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/lib is outside prefix /home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_h_env_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_placehold_place (removing it)

  • Multiple errors indicating that a lot of DSOs are not found in reqs/run, suggesting for overlinking or missing dependencies:
Details
   INFO: sysroot: '/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/x86_64-conda-linux-gnu/sysroot/' files: '['/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/x86_64-conda-linux-gnu/sysroot/usr/share/zoneinfo/zone1970.tab', '/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/x86_64-conda-linux-gnu/sysroot/usr/share/zoneinfo/zone.tab', '/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/x86_64-conda-linux-gnu/sysroot/usr/share/zoneinfo/tzdata.zi', '/home/conda/staged-recipes/build_artifacts/gz-sim-yarp-plugins-split_1712138491759/_build_env/x86_64-conda-linux-gnu/sysroot/usr/share/zoneinfo/right/Zulu']'
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-laser-system.so): lib/libgz-sim-yarp-handler.so found in this package
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-laser-system.so): lib/libgz-sim-yarp-laser-singleton.so found in this package
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-laser-system.so): lib/libgz-sim-yarp-commons.so found in this package
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libgz-sim8.so.8 found in conda-forge/linux-64::libgz-sim8==8.1.0=h81317a9_2
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libgz-common5.so.5 found in ['conda-forge/linux-64::libgz-common5==5.5.1=h23e380d_0']
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): .. but ['conda-forge/linux-64::libgz-common5==5.5.1=h23e380d_0'] not in reqs/run, (i.e. it is overlinking) (likely) or a missing dependency (less likely)
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libgz-transport13.so.13 found in ['conda-forge/linux-64::libgz-transport13==13.1.0=h45a367e_0']
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): .. but ['conda-forge/linux-64::libgz-transport13==13.1.0=h45a367e_0'] not in reqs/run, (i.e. it is overlinking) (likely) or a missing dependency (less likely)
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libgz-msgs10.so.10 found in ['conda-forge/linux-64::libgz-msgs10==10.1.0=h3355b27_2']
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): .. but ['conda-forge/linux-64::libgz-msgs10==10.1.0=h3355b27_2'] not in reqs/run, (i.e. it is overlinking) (likely) or a missing dependency (less likely)
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libsdformat14.so.14 found in ['conda-forge/linux-64::libsdformat14==14.0.0=h2d4a2c5_2']
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): .. but ['conda-forge/linux-64::libsdformat14==14.0.0=h2d4a2c5_2'] not in reqs/run, (i.e. it is overlinking) (likely) or a missing dependency (less likely)
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libprotobuf.so.25.3.0 found in ['conda-forge/linux-64::libprotobuf==4.25.3=h08a7969_0']
  ERROR (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): .. but ['conda-forge/linux-64::libprotobuf==4.25.3=h08a7969_0'] not in reqs/run, (i.e. it is overlinking) (likely) or a missing dependency (less likely)
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libYARP_dev.so.3 found in conda-forge/linux-64::libyarp==3.9.0=ha614a09_2
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libYARP_init.so.3 found in conda-forge/linux-64::libyarp==3.9.0=ha614a09_2
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libYARP_os.so.3 found in conda-forge/linux-64::libyarp==3.9.0=ha614a09_2
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libstdc++.so.6 found in conda-forge/linux-64::libstdcxx-ng==13.2.0=h7e041cc_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO lib/libgcc_s.so.1 found in conda-forge/linux-64::libgcc-ng==13.2.0=h807b86a_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-imu-system.so): Needed DSO x86_64-conda-linux-gnu/sysroot/lib64/libc.so.6 found in CDT/compiler package conda-forge/noarch::sysroot_linux-64==2.17=h4a8ded7_14
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-camera-singleton.so): Needed DSO lib/libYARP_os.so.3 found in conda-forge/linux-64::libyarp==3.9.0=ha614a09_2
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-camera-singleton.so): Needed DSO lib/libstdc++.so.6 found in conda-forge/linux-64::libstdcxx-ng==13.2.0=h7e041cc_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-camera-singleton.so): Needed DSO lib/libgcc_s.so.1 found in conda-forge/linux-64::libgcc-ng==13.2.0=h807b86a_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-camera-singleton.so): Needed DSO x86_64-conda-linux-gnu/sysroot/lib64/libc.so.6 found in CDT/compiler package conda-forge/noarch::sysroot_linux-64==2.17=h4a8ded7_14
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-forcetorque-singleton.so): Needed DSO lib/libYARP_os.so.3 found in conda-forge/linux-64::libyarp==3.9.0=ha614a09_2
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-forcetorque-singleton.so): Needed DSO lib/libstdc++.so.6 found in conda-forge/linux-64::libstdcxx-ng==13.2.0=h7e041cc_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-forcetorque-singleton.so): Needed DSO lib/libgcc_s.so.1 found in conda-forge/linux-64::libgcc-ng==13.2.0=h807b86a_5
   INFO (libgz-sim-yarp-plugins,lib/libgz-sim-yarp-forcetorque-singleton.so): Needed DSO x86_64-conda-linux-gnu/sysroot/lib64/libc.so.6 found in CDT/compiler package conda-forge/noarch::sysroot_linux-64==2.17=h4a8ded7_14
WARNING (libgz-sim-yarp-plugins): run-exports library package conda-forge/linux-64::gtest==1.14.0=h00ab1b0_1 in requirements/run but it is not used (i.e. it is overdepending or perhaps statically linked? If that is what you want then add it to `build/ignore_run_exports`)

@traversaro
Copy link
Contributor

Some warnings related to paths outside the prefix:

You can safely ignore those, basically the conda-build machinery is automatically handling those. Just FYI you could add -DCMAKE_SKIP_BUILD_RPATH:BOOL=ON in the CMake arguments in the build script, but I guess it would just increase confusion.

Multiple errors indicating that a lot of DSOs are not found in reqs/run, suggesting for overlinking or missing dependencies:

Ah, that is indeed a problem, those are public dependencies of gz-sim, so we actually depend at runtime on the specific versions of those libraries, so we need to manually list them as depenendencies in the host section of the recipe. See conda-forge/gazebo-feedstock#107 for a generic discussion on the problem.

WARNING (libgz-sim-yarp-plugins): run-exports library package conda-forge/linux-64::gtest==1.14.0=h00ab1b0_1 in requirements/run but it is not used (i.e. it is overdepending or perhaps statically linked? If that is what you want then add it to build/ignore_run_exports)

This is a valid warning. Basically we only depend on gtest for testing, so we should not depend at runtime on it. We can ignore the run_exports on it with a ignore_run_exports block as suggested by the message, see https:/conda-forge/libprotobuf-feedstock/blob/47734faf4459f2635b414f330816a5e7bb359600/recipe/meta.yaml#L51-L52 .

@xela-95 xela-95 force-pushed the add-gz-sim-yarp-plugins-pkg branch from fe52999 to 7308cdb Compare April 3, 2024 14:37
@xela-95
Copy link
Contributor Author

xela-95 commented Apr 3, 2024

@traversaro finally the CI is passing. The branch has also been rebased on main.

@traversaro
Copy link
Contributor

@traversaro finally the CI is passing. The branch has also been rebased on main.

Can you squash the history to a single commit? Thanks!

@xela-95 xela-95 force-pushed the add-gz-sim-yarp-plugins-pkg branch from 7308cdb to c24cddb Compare April 4, 2024 07:20
@xela-95
Copy link
Contributor Author

xela-95 commented Apr 4, 2024

Can you squash the history to a single commit? Thanks!

Done

@traversaro
Copy link
Contributor

traversaro commented Apr 4, 2024

Ok, as the last step before the review, we need to provide a description in the original post of the PR, to introduce the package and explain a bunch of design decision to the reviewers, so to simplify their work, I suggest something like (inspired by packages I added in the past, see https:/conda-forge/staged-recipes/pulls/traversaro):

gz-sim-yarp-plugins are a set of plugins that expose the functionality of the gz-sim simulator via YARP devices. It is a spiritual successor to gazebo-yarp-plugins package, already packaged in conda-forge (see https:/conda-forge/gazebo-yarp-plugins-feedstock).

For consistency with gazebo-yarp-plugins feedstock, the proposed recipe adds two different packages:

  • libgz-sim-yarp-plugins: This is the package that is meant to be used if the package is consumed as a C/C++ library, and linked to a downstream project. At the moment the package does not install any header, but as soon as it will do it, this package will get a run_exports section. This package name contains the lib prefix as requested in Add recipe for libmatio-cpp #19764 (review) for C/C++ libraries.
  • gz-sim-yarp-plugins: This is the package is an empty package that depends on libgz-sim-yarp-plugins and that is meant to be used if the plugins are just loaded at runtime in a downstream project, but not linked at compile time to any downstream project.

The feedstock is named gz-sim-yarp-plugins to match the repo name and support different package outputs names in the future.

@traversaro
Copy link
Contributor

To clarify @xela-95 you need to copy the description yourself, I can't modify your original post.

@xela-95
Copy link
Contributor Author

xela-95 commented Apr 4, 2024

Thank you @traversaro, I updated the PR description as suggested.

@traversaro
Copy link
Contributor

@conda-forge/staged-recipes @conda-forge/help-c-cpp The recipe is ready for review, thanks a lot in advance!

Copy link

github-actions bot commented Apr 4, 2024

To help direct your pull request to the best reviewers, please mention a topic-specifc team if your recipe matches any of the following: conda-forge/help-c-cpp, conda-forge/help-cdts, conda-forge/help-go, conda-forge/help-java, conda-forge/help-julia, conda-forge/help-nodejs, conda-forge/help-perl, conda-forge/help-python, conda-forge/help-python-c, conda-forge/help-r, conda-forge/help-ruby,or conda-forge/help-rust. Thanks!

recipes/gz-sim-yarp-plugins/conda_build_config.yaml Outdated Show resolved Hide resolved
- name: {{ cxx_name }}
script: build_cxx.sh # [unix]
script: bld_cxx.bat # [win]
build:
Copy link
Member

Choose a reason for hiding this comment

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

This probably should have a run_exports?

Copy link
Contributor

Choose a reason for hiding this comment

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

Yes, it will have it eventually. However, at the moment the package does not install any header file, so it can't be actually consumed as a C++ library by downstream users (it can only be used at runtime by loading it via dlopen). Furthermore, we still need to define an ABI stability policy, so we did not add any run_exports. As soon as we do a release which install headers and define an ABI stability policy, we will add run_exports . See also the original post: #25910 (comment) .

Copy link
Member

@xhochy xhochy left a comment

Choose a reason for hiding this comment

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

👍

@xhochy xhochy merged commit b4b67b1 into conda-forge:main Apr 9, 2024
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

Successfully merging this pull request may close these issues.

3 participants