ProteoWizard / pwiz

The ProteoWizard Library is a set of software libraries and tools for rapid development of mass spectrometry and proteomic data analysis software.
http://proteowizard.sourceforge.net/
Apache License 2.0
237 stars 101 forks source link

ProteoWizard build issues under Linux Red Hat 8 #3145

Open keesh0 opened 2 months ago

keesh0 commented 2 months ago

Hello, I have a local build with an enhancement working fine under Windows 11 using Visual Studio 2022. Now I wish to target Linux Red Hat 8 for production. When trying to build Quameter the following error appears. Any ideas would be appreciated.

scl enable gcc-toolset-9 "./quickbuild.sh -q --without-binary-msdata runtime-link=static pwiz_tools/Bumbershoot/quameter"

using gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-20)

gcc.compile.c++ /odin/dev/scripts/deployments/quameter_asymm/PROTEOMICS_PWIZ/build-linux-x86_64/pwiz/data/msdata/without-binary-msdata/gcc-8/release/link-static/threading-multi/IO.o In file included from /odin/dev/scripts/deployments/quameter_asymm/PROTEOMICS_PWIZ/libraries/hdf5-1.12.0/src/hdf5.h:22, from /odin/dev/scripts/deployments/quameter_asymm/PROTEOMICS_PWIZ/pwiz/data/msdata/mzmlb/Connection_mzMLb.hpp:32, from /odin/dev/scripts/deployments/quameter_asymm/PROTEOMICS_PWIZ/pwiz/data/msdata/IO.cpp:33: /odin/dev/scripts/deployments/quameter_asymm/PROTEOMICS_PWIZ/libraries/hdf5-1.12.0/src/H5public.h:173:19: error: conflicting declaration 'typedef long long int ssize_t' typedef long long ssize_t;


I needed to update the JAM file to find hdf5: project pwiz : requirements

$(PWIZ_ROOT_PATH) $(PWIZ_LIBRARIES_PATH)/boost_aux $(boost_src) $(zlib_src) $(PWIZ_LIBRARIES_PATH)/hdf5-1.12.0/src
chambm commented 2 months ago

HDF 1.12 was added for reading Mobilion data, support for which is currently disabled. MZ5/mzMLb should be using hdf5-1.8, and 1.12 will be removed with a future Mobilion update that removes the need for compiling with the HDF5 headers. You shouldn't need to edit the Jamfiles to have it compile with HDF5 1.8 in the libraries directory.

keesh0 commented 2 weeks ago

Hello, Wondering if there is a method to bypass running the unit tests when building pwiz_tools/Bumbershoot/idpicker/Qonverter ? thx e.-

chambm commented 2 weeks ago

The HDF 1.12 failure should be fixed as soon as the #3200 PR is merged because it removes those headers.