Skip to content

Commit b0dea5a

Browse files
committed
COMP: Install GDCM DebugDevel component in libitk-devel package
On Windows, the GDCM-bundled jpeg libraries (gdcmjpeg8/12/16) install their static .lib archives under the "DebugDevel" CMake component, not "Development". ITKTargets.cmake references these .lib files, so without this component the downstream find_package(ITK) test fails: CMake Error at ITKTargets.cmake:2172: The imported target "ITK::gdcmjpeg8" references the file "%PREFIX%/Library/lib/itkgdcmjpeg8-6.0.lib" but this file does not exist. Add DebugDevel to both install scripts for cross-platform consistency. On Linux/macOS the component produces no output (gdcmjpeg static archives are not exported there), so it is a safe no-op on those platforms.
1 parent 13eb5d4 commit b0dea5a

File tree

2 files changed

+11
-0
lines changed

2 files changed

+11
-0
lines changed

Utilities/conda-packages/libitk-devel_install.bat

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,9 @@ cmake -DCOMPONENT=Development -P "%BUILD_DIR%\cmake_install.cmake"
44
if errorlevel 1 exit 1
55
cmake -DCOMPONENT=Headers -P "%BUILD_DIR%\cmake_install.cmake"
66
if errorlevel 1 exit 1
7+
REM GDCM bundles static jpeg libs (gdcmjpeg8/12/16) whose ARCHIVE rules
8+
REM install under the "DebugDevel" component. ITKTargets.cmake references
9+
REM these .lib files, so they must be present for downstream find_package
10+
REM to succeed on Windows.
11+
cmake -DCOMPONENT=DebugDevel -P "%BUILD_DIR%\cmake_install.cmake"
12+
if errorlevel 1 exit 1

Utilities/conda-packages/libitk-devel_install.sh

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,8 @@ set -ex
33
BUILD_DIR="${SRC_DIR}/build"
44
cmake -DCOMPONENT=Development -P "${BUILD_DIR}/cmake_install.cmake"
55
cmake -DCOMPONENT=Headers -P "${BUILD_DIR}/cmake_install.cmake"
6+
# GDCM bundles static jpeg libs (gdcmjpeg8/12/16) whose ARCHIVE rules
7+
# install under the "DebugDevel" component. ITKTargets.cmake references
8+
# these .lib files on Windows, so include DebugDevel for cross-platform
9+
# consistency (no-op on Linux/macOS where no static .a is installed here).
10+
cmake -DCOMPONENT=DebugDevel -P "${BUILD_DIR}/cmake_install.cmake"

0 commit comments

Comments
 (0)