SCIInstitute / Seg3D

Seg3D is a free volume segmentation and processing tool developed by the NIH Center for Integrative Biomedical Computing at the University of Utah Scientific Computing and Imaging (SCI) Institute.
108 stars 47 forks source link

Linux build fails on error in ThirdParty/GDCM #417

Open cribe78 opened 1 year ago

cribe78 commented 1 year ago

Description

Attempting to build Seg3D in a containerized Ubuntu 22.04 fails at step "Building CXX object Modules/ThirdParty/GDCM/src/gdcm/Source/MediaStorageAndFileFormat/CMakeFiles/gdcmMSFF.dir/gdcmImageChangePhotometricInterpretation.cxx.o ". While this appears to be due to a bug in an upstream 3rd party project, GDCM, it is unclear how to alter to build system to potentially pull in a different version of GDCM.

Relevant selection from output of "make": seg3d-make.log

Steps to Reproduce

  1. Create an apptainer definition file named Apptainer with the following contents:

Bootstrap: docker From: ubuntu:22.04

%post apt-get -y update export DEBIAN_FRONTEND=noninteractive apt install -y cmake build-essential qtbase5-dev qt5-qmake wget libqt5svg5-dev git subversion \ textlive-latex-extra libboost-python-dev libtirpc-dev wget https://github.com/SCIInstitute/Seg3D/archive/refs/tags/v2.5.1.tar.gz tar xzf v2.5.1.tar.gz cd /Seg3D-2.5.1/bin cmake -DQt5_PATH:PATH=/usr/lib/x86_64-linux-gnu/qt5 ../Superbuild make make install

  1. Run "apptainer build Seg3D.sif Apptainer

Expected behavior: The make step completes successfully and a container image is created.

Actual behavior: The error listed above is encountered during the make step.

Versions

Version 2.5.1. Also tested on Git master branch with same results.

cribe78 commented 1 year ago

Uploaded apptainer definition file: apptainer.txt

The text pasted in bug report is missing a necessary \ at the end of the "apt install -y" line. I can convert the apptainer definition file to a Dockerfile if requested.