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

Installation - fix CGAL_ITK_support #7858

Merged
merged 8 commits into from
Nov 29, 2023

Conversation

janetournois
Copy link
Member

@janetournois janetournois commented Nov 13, 2023

Summary of Changes

This PR modifies CGAL_ITK_support.cmake, so that it uses imported targets from ITKConfig.cmake.

Note that for now

  • the line include(${ITK_USE_FILE}) is still needed
  • the module ITKThresholding does not have a lib, so we do not link the libraries and only include the files

Release Management

  • Affected package(s): Installation, and the CMakeLists of Mesh_3
  • Issue(s) solved (if any): fix Issue with CGAL ITK_Support #7855
  • License and copyright ownership: unchanged

and adapt the CMakeLists that were using it
@janetournois
Copy link
Member Author

The error in the CI is the following

/usr/bin/ld: cannot find -lITKSmoothing: No such file or directory
/usr/bin/ld: cannot find -lITKImageIntensity: No such file or directory

@SaillantNicolas can you please check how ITK is installed on the CI machine, and if these libs are really not available?
It is working with my windows setup.

cc @lrineau

Now almost all dependencies of the CGAL 3D demo are installed.

Exceptions:
```
-- Missing optional packages:
 * LASLIB, A library for LIDAR I/O.
   Required for reading or writing LAS files.
 * SCIP, A solver for mixed integer programming.
   Can be used as a solver in the surface_reconstruction_plugin plugin.
 * OpenGR
 * libpointmatcher
```
@lrineau
Copy link
Member

lrineau commented Nov 16, 2023

The error in the CI is the following

/usr/bin/ld: cannot find -lITKSmoothing: No such file or directory
/usr/bin/ld: cannot find -lITKImageIntensity: No such file or directory

@SaillantNicolas can you please check how ITK is installed on the CI machine, and if these libs are really not available? It is working with my windows setup.

cc @lrineau

I think I fixed that with the three commits https://github.com/CGAL/cgal/pull/7858/files/0b73361226b11e06520c32970178e016cc0d200d..0a9392c778ab7e485603ed0658e1f679b0be44bb.

I used https://github.com/nektos/act to first verify locally (using act's Docker images), to create cb5bd56. Then there was an issue with Github's version of Ubuntu. Fixed in 0a9392c.

@SaillantNicolas You should install https://github.com/nektos/act on your machine. That is a very useful tool to test Github workflows on your local machine.

@lrineau
Copy link
Member

lrineau commented Nov 16, 2023

... Actually it was fixed by commit 74896b9: install ITK 5 instead of ITK 4.

@janetournois
Copy link
Member Author

janetournois commented Nov 23, 2023

In the testsuite CGAL-6.0-Ic-112, 2 platforms are failing because of this PR (Ubuntu-Latest-NO_DEPRECATED_CODE and Ubuntu-GCC_master_CXX20-Release), complaining about

/usr/bin/ld: cannot find -lITKSmoothing: No such file or directory
/usr/bin/ld: cannot find -lITKImageIntensity: No such file or directory

and with lots of warnings from ITK-4.13.

Is it possible to update those 2 platforms to ITK-5, and add the needed libraries please? @sloriot

@lrineau
Copy link
Member

lrineau commented Nov 23, 2023

In the testsuite CGAL-6.0-Ic-112, 2 platforms are failing because of this PR (Ubuntu-Latest-NO_DEPRECATED_CODE and Ubuntu-GCC_master_CXX20-Release), complaining about

/usr/bin/ld: cannot find -lITKSmoothing: No such file or directory
/usr/bin/ld: cannot find -lITKImageIntensity: No such file or directory

and with lots of warnings from ITK-4.13.

Is it possible to update those 2 platforms to ITK-5, and add the needed libraries please? @sloriot

Actually, there are Linux distributions (including the one I use: Fedora 39) that are currently stuck with ITK version 4.13, and I would like to stay compatible with that version of ITK. I will modify this PR accordingly.

That will allow to be compatible with ITK version 4.13 and 5.x.
@lrineau lrineau changed the title Installation - remove CGAL_ITK_support Installation - fix CGAL_ITK_support Nov 23, 2023
@lrineau
Copy link
Member

lrineau commented Nov 23, 2023

In commit 9262c6a I have re-added a file CGAL_ITK_support.cmake and an imported target CGAL::ITK_support. That imported target uses imported targets from ITK, and should be compatible with both ITK versions 4.13 and 5.x.

@afabri
Copy link
Member

afabri commented Nov 24, 2023

Errors in the testsuite

@lrineau
Copy link
Member

lrineau commented Nov 24, 2023

Errors in the testsuite

The last merged commit for that testsuite was not the last one (9262c6a9) but the one before (74896b9). Probably my push arrived too late yesterday.

@sloriot sloriot added Batch_1 First Batch of PRs under testing and removed Ready to be tested Under Testing labels Nov 28, 2023
@sloriot sloriot added Tested and removed Batch_1 First Batch of PRs under testing labels Nov 29, 2023
@sloriot
Copy link
Member

sloriot commented Nov 29, 2023

Successfully tested in CGAL-6.0-Ic-116

@lrineau lrineau added the rm only: ready for master For the release team only: that indicates that a PR is about to be merged in 'master' label Nov 29, 2023
@lrineau lrineau self-assigned this Nov 29, 2023
@lrineau lrineau merged commit 2cf5576 into CGAL:master Nov 29, 2023
9 checks passed
@lrineau lrineau removed the rm only: ready for master For the release team only: that indicates that a PR is about to be merged in 'master' label Nov 30, 2023
@lrineau lrineau deleted the Installation-ITK-jtournois branch November 30, 2023 09:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Issue with CGAL ITK_Support
4 participants