-
Notifications
You must be signed in to change notification settings - Fork 26
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 workflow using conda to install dependencies #313
base: master
Are you sure you want to change the base?
Conversation
4e09529
to
8d44bb1
Compare
In general FYI I am all in favor in progressively moving dependencies with a clear versioning API/ABI and release policy from the robotology channel to proper conda-forge dependencies. iDynTree is definitely one of the first candidates, the missing part is just to move the idyntree-yarp-tools to https://github.com/robotology/idyntree-yarp-tools . |
My comment was not clear enough: substitute |
Actually I did not even noticed the conda-forge/robotology typo. I just mentioned that for mutual alignment. |
8d44bb1
to
013bb35
Compare
dc8de7f
to
5a3f611
Compare
a8f0141
to
76424c7
Compare
Rebased and improved the workflow. Still blocked by conda-forge/libignition-gazebo-feedstock#4. |
I re-triggered CI just to check and now after conda-forge/libignition-common-feedstock#36, the error of the wrong plugin directory seems solved. The project is building (also before it was) and the tests run and fail. This time, the error is the following:
Inspecting the conda environment, no ODE package is installed automatically (this was what I was mentioning today about the runtime dependencies of ignition libraries packaged in conda-forge @traversaro). mamba list
|
Now few tests are failing, but the majority are passing. Definitely a step forward. I'm not sure what's missing now, I guess I need to debug it locally, from CI it's not clear to me. Failing tests:
|
1fc7edb
to
3d75dcc
Compare
Rebasing on latest Edit: no changes. |
3d75dcc
to
256bbf7
Compare
256bbf7
to
ef28b84
Compare
1a9ddcc
to
d7f7696
Compare
This PR seems now working on linux, but there's a test failing probably due to the dart version that is shipped in conda-forge (I disabled it for the moment). MacOS segfaults during pytest.
Windows errors during CMake configuring
|
Updated status:
On windows, it seems that it links the dll instead of the libs. cc @traversaro any clue? I can see that the library is found as part of the
macos: segfaults when scenario is imported
windows: fails to compile due to link error with zlib.dll
|
I managed to get a more descriptive error message on macos:
It seems to pick the
|
With the workaround provided by @traversaro in conda-forge/libignition-gazebo-feedstock#30 (comment), the windows build compiles until the SWIG bindings, that now fail with:
The workflow is compiling in Debug and this could be the cause of this |
Compiling in Release seems fixing the SWIG bindings:
but now the vendored Physics system is failing with:
Trying to use |
Now also windows compiles the project successfully. Let's see if we manage to reach the testing step. Similarly to macOS, I suspect that importing the bindings does not work out of the box also on windows. |
080c6a7
to
343a61d
Compare
Install explicitly libode Disable failing tests due to conda-forge's dart [remove]
[remove] temporarily disable check for ign command
f90906e
to
6ae5e86
Compare
6ae5e86
to
6795719
Compare
Updated status:
macos: segfaults when scenario is imported
windows: tests fail
|
@traversaro reading better the windows error:
it seems that something related to the relocation here failed. The file |
Yes, the problem is probably not here, I guess for now you can skip Windows and macOS after just opening an issue in the ign-gazebo feedstock repo on those problems. |
#279 provides useful information about why relying on conda could be beneficial over the current PyPI-based distribution.
Much work has been done by the conda-forge community (including @traversaro) to provide the Ignition stack:
This PR explores the integration of conda and its channels (particularly, conda-forge and robotology) to install the build dependencies in CI.
CMAKE_PREFIX_PATH
for iDynTree does not work in this setup, I had to rely oniDynTree_DIR
(note that iDynTree exported targets are inside the python package)This PR is currently blocked by conda-forge/libignition-gazebo-feedstock#4.