RoboStack / ros-humble

Recipes for ROS 2 Humble Hawksbill
81 stars 32 forks source link

Next batch of Windows packages #141

Closed Tobias-Fischer closed 3 months ago

Tobias-Fischer commented 3 months ago

Weird Boost::python related error:

  Generating Code...
     Creating library C:/Users/runneradmin/micromamba/envs/testpr_env/conda-bld/ros-0_1707798086320/work/build/src/Release/cv_bridge_boost.lib and object C:/Users/runneradmin/micromamba/envs/testpr_env/conda-bld/ros-0_1707798086320/work/build/src/Release/cv_bridge_boost.exp
module.obj : error LNK2019: unresolved external symbol "struct _object * boost::python::detail::current_scope" (?current_scope@detail@python@boost@@3PEAU_object@@EA) referenced in function "void __cdecl boost::python::def<class boost::python::api::object (__cdecl*)(class boost::python::api::object,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool,double,double),struct cvtColorForDisplayWrap_overloads>(char const *,class boost::python::api::object (__cdecl*)(class boost::python::api::object,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool,double,double),struct cvtColorForDisplayWrap_overloads const &)" (??$def@P6A?AVobject@api@python@boost@@V1234@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1_NNN@ZUcv
%SRC_DIR%\build\src\boost\Release\cv_bridge_boost.pyd : fatal error LNK1120: 1 unresolved externals [%SRC_DIR%\build\src\cv_bridge_boost.vcxproj]

Any ideas @traversaro?

traversaro commented 3 months ago

Weird Boost::python related error:

  Generating Code...
     Creating library C:/Users/runneradmin/micromamba/envs/testpr_env/conda-bld/ros-0_1707798086320/work/build/src/Release/cv_bridge_boost.lib and object C:/Users/runneradmin/micromamba/envs/testpr_env/conda-bld/ros-0_1707798086320/work/build/src/Release/cv_bridge_boost.exp
module.obj : error LNK2019: unresolved external symbol "struct _object * boost::python::detail::current_scope" (?current_scope@detail@python@boost@@3PEAU_object@@EA) referenced in function "void __cdecl boost::python::def<class boost::python::api::object (__cdecl*)(class boost::python::api::object,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool,double,double),struct cvtColorForDisplayWrap_overloads>(char const *,class boost::python::api::object (__cdecl*)(class boost::python::api::object,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,bool,double,double),struct cvtColorForDisplayWrap_overloads const &)" (??$def@P6A?AVobject@api@python@boost@@V1234@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@1_NNN@ZUcv
%SRC_DIR%\build\src\boost\Release\cv_bridge_boost.pyd : fatal error LNK1120: 1 unresolved externals [%SRC_DIR%\build\src\cv_bridge_boost.vcxproj]

Any ideas @traversaro?

I tested this in https://github.com/RoboStack/ros-humble/pull/142, we just need to delete the patch/ros-humble-cv-bridge.patch file (sorry, I can't delete it directly in the branch).

Tobias-Fischer commented 3 months ago

Hmm ok. I think this patch might be needed on Unix though. We can rename it

Tobias-Fischer commented 3 months ago

I’ve added you as collaborator - I didn’t realise you weren’t already.

traversaro commented 3 months ago

Hmm ok. I think this patch might be needed on Unix though. We can rename it

Which part? I checked the BoostConfig.cmake file and it should work fine with the find_package(Boost REQUIRED COMPONENTS python${Python3_VERSION_MAJOR}${Python3_VERSION_MINOR}) style components (probably there was an old problem in BoostConfig.cmake file that was fixed, and the BOOST_PYTHON_STATIC_LIB part apparently was added for Windows compatibility (see https://github.com/RoboStack/ros-humble/blame/main/patch/ros-humble-cv-bridge.patch). Note that to fix the problem we just need to remove the BOOST_PYTHON_STATIC_LIB part, so for now we can just do that.

Tobias-Fischer commented 3 months ago

Ah great - in this case, let’s just remove the patch :)

traversaro commented 3 months ago

New Windows problem: ros-humble-gazebo-dev is failing with error:

2024-02-13T15:06:18.6759149Z 
2024-02-13T15:06:19.2991307Z The input line is too long.
2024-02-13T15:06:19.2991718Z The syntax of the command is incorrect.

I tried locally and it is building correctly with no problems.

traversaro commented 3 months ago

I suspect the PATH environment variable is already too long in GitHub Actions, see:

2024-02-13T15:06:18.6720499Z %SRC_DIR%>set "PATH=%BUILD_PREFIX%;%BUILD_PREFIX%\Library\mingw-w64\bin;%BUILD_PREFIX%\Library\usr\bin;%BUILD_PREFIX%\Library\bin;%BUILD_PREFIX%\Scripts;%BUILD_PREFIX%\bin;%PREFIX%;%PREFIX%\Library\mingw-w64\bin;%PREFIX%\Library\usr\bin;%PREFIX%\Library\bin;%PREFIX%\Scripts;%PREFIX%\bin;C:\Users\runneradmin\micromamba\envs\testpr_env;C:\Users\runneradmin\micromamba\envs\testpr_env\Library\mingw-w64\bin;C:\Users\runneradmin\micromamba\envs\testpr_env\Library\usr\bin;C:\Users\runneradmin\micromamba\envs\testpr_env\Library\bin;C:\Users\runneradmin\micromamba\envs\testpr_env\Scripts;C:\Users\runneradmin\micromamba\envs\testpr_env\bin;C:\Users\runneradmin\micromamba\condabin;C:\Users\runneradmin\bin;C:\Program Files\Git\usr\local\bin;C:\Program Files\Git\usr\bin;C:\Program Files\Git\opt\bin;C:\Users\runneradmin\micromamba-bin;C:\Program Files\Git\usr\bin;C:\Program Files\MongoDB\Server\5.0\bin;C:\aliyun-cli;C:\vcpkg;C:\cf-cli;C:\Program Files (x86)\NSIS;C:\tools\zstd;C:\Program Files\Mercurial;C:\hostedtoolcache\windows\stack\2.15.1\x64;C:\cabal\bin;C:\ghcup\bin;C:\mingw64\bin;C:\Program Files\dotnet;C:\Program Files\MySQL\MySQL Server 5.7\bin;C:\Program Files\R\R-4.3.2\bin\x64;C:\SeleniumWebDrivers\GeckoDriver;C:\SeleniumWebDrivers\EdgeDriver;C:\SeleniumWebDrivers\ChromeDriver;C:\Program Files (x86)\sbt\bin;C:\Program Files (x86)\GitHub CLI;C:\Program Files\Git\usr\bin;C:\Program Files (x86)\pipx_bin;C:\npm\prefix;C:\hostedtoolcache\windows\go\1.20.14\x64\bin;C:\hostedtoolcache\windows\Python\3.7.9\x64\Scripts;C:\hostedtoolcache\windows\Python\3.7.9\x64;C:\hostedtoolcache\windows\Ruby\2.5.9\x64\bin;C:\Program Files\OpenSSL\bin;C:\tools\kotlinc\bin;C:\hostedtoolcache\windows\Java_Temurin-Hotspot_jdk\8.0.402-6\x64\bin;C:\Program Files\ImageMagick-7.1.1-Q16-HDRI;C:\Program Files\Microsoft SDKs\Azure\CLI2\wbin;C:\ProgramData\kind;C:\Program Files\Eclipse Foundation\jdk-8.0.302.8-hotspot\bin;C:\ProgramData\Chocolatey\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files\PowerShell\7;C:\Program Files\Microsoft\Web Platform Installer;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn;C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\160\DTS\Binn;C:\Strawberry\c\bin;C:\Strawberry\perl\site\bin;C:\Strawberry\perl\bin;C:\ProgramData\chocolatey\lib\pulumi\tools\Pulumi\bin;C:\Program Files\TortoiseSVN\bin;C:\Program Files\CMake\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.8.7\bin;C:\Program Files\Microsoft Service Fabric\bin\Fabric\Fabric.Code;C:\Program Files\Microsoft SDKs\Service Fabric\Tools\ServiceFabricLocalClusterManager;C:\Program Files\nodejs;C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin;C:\Program Files\GitHub CLI;C:\tools\php;C:\Program Files (x86)\sbt\bin;C:\Program Files\Amazon\AWSCLIV2;C:\Program Files\Amazon\SessionManagerPlugin\bin;C:\Program Files\Amazon\AWSSAMCLI\bin;C:\Program Files (x86)\Google\Cloud SDK\google-cloud-sdk\bin;C:\Program Files (x86)\Microsoft BizTalk Server;C:\Program Files\LLVM\bin;C:\Users\runneradmin\.dotnet\tools;C:\Users\runneradmin\.cargo\bin;C:\Users\runneradmin\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Git\usr\bin\vendor_perl;C:\Program Files\Git\usr\bin\core_perl" 

and this results in a problem in some case.

Tobias-Fischer commented 3 months ago

Thanks a lot Silvio! Very exciting, not many packages to go after that.

traversaro commented 3 months ago

Thanks a lot Silvio! Very exciting, not many packages to go after that.

Unfortunately the green was too good to be true! https://github.com/RoboStack/ros-humble/pull/141/commits/cad2190f3303f7e3226e3c6420f15b1fe87859b1 contained a bug for which no packages were built, I will open a new PR.

traversaro commented 3 months ago

However, as the azure CI is different, the PATH problem was not there, so gazebo-dev was built correctly: https://github.com/RoboStack/ros-humble/actions/runs/7891874443/job/21537124456 .