sneumann / mzR

This is the git repository matching the Bioconductor package mzR: parser for netCDF, mzXML, mzData and mzML files (mass spectrometry data)
42 stars 26 forks source link

Missing Boost files due to compiler dependent compilation #233

Open Flamefire opened 4 years ago

Flamefire commented 4 years ago

It seems the included Boost files are generated (as per the included instructions) by running strace -e open -f R CMD INSTALL .. 2>&1 | grep '"./boost/[^=]* = [0-9]' | cut -d \" -f 2 2>&1 | sort | uniq >/tmp/boost-includes.log

However this will miss out on compiler-dependent includes, for example on Arch it fails to find boost/smart_ptr/detail/sp_counted_base_sync.hpp, see https://github.com/sneumann/mzR/blob/39380f599380feb02f26646c67f5e1d86baf0a29/src/boost/boost/smart_ptr/detail/sp_counted_base.hpp#L71-L72

I'd hence strongly recommend to not cut down on boost headers or at least do it on the library level, e.g. if anything from boost/foo is included, copy the whole folder, not parts of it. Being able to use a system installed Boost would be even better

sneumann commented 4 years ago

Hi Alexander, your observation is spot on, and we don't have a good solution yet. Any suggestions welcome, I am not a boost wizard. IIRC the BH package carries the headers only, so we can't take that alone. Currently I don't have an estimate how large we'd get if we include entire libraries used by pwiz. However, an upgrade in mzR to a new pwiz is overdue :-( I have an abandoned branch that didn't work well enough to be merged. It would be great to get something rolling into the next devel release. Yours, Steffen

sneumann commented 3 years ago

Just as update, there is an updated branch with the new boost stuff in https://github.com/sneumann/mzR/tree/feature/updatePwiz_3_0_20290 Which compiles but then fails somewhere when reading the mzML :-( Yours, Steffen

sneumann commented 2 years ago

Hi, I can confirm that mzR-3.9.3 at http://bioconductor.org/checkResults/devel/bioc-LATEST/mzR/ at commit 458704d6 builds fine with a new pwiz version. There might be still / again missing header files. Please report back if things work on your platform now. Yours, Steffen

Flamefire commented 2 years ago

and we don't have a good solution yet. Any suggestions welcome, I am not a boost wizard.

A suggestion was already provided:

I'd hence strongly recommend to not cut down on boost headers or at least do it on the library level, e.g. if anything from boost/foo is included, copy the whole folder, not parts of it. Being able to use a system installed Boost would be even better

Haven't checked on the affected machine by now, so it might be solved already, but keep the above in mind

sneumann commented 2 years ago

Hi @Flamefire , does mzR >= 2.29.3 work now on your setup ? If yes, please report back so we can close this issue. Yours, Steffen