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

VM: update_VM.sh fails on GENERATE_SIMULATED_TEST_DATA #745

Closed
paskino opened this issue Jul 14, 2022 · 13 comments
Closed

VM: update_VM.sh fails on GENERATE_SIMULATED_TEST_DATA #745

paskino opened this issue Jul 14, 2022 · 13 comments
Milestone

Comments

@paskino
Copy link
Contributor

paskino commented Jul 14, 2022

Once #743 is fixed, I continued the build but didn't complete.

Got the following error

Scanning dependencies of target MR_PROCESS_TESTDATA
                 from /home/sirfuser/devel/buildVM/sources/SIRF/src/xGadgetron/cGadgetron/tests/mrtest_auxiliary_funs.h:32,
                 from /home/sirfuser/devel/buildVM/sources/SIRF/src/xGadgetron/cGadgetron/tests/mrtests_prep_testdata.cpp:30:
/home/sirfuser/devel/buildVM/sources/SIRF/src/xGadgetron/cGadgetron/include/sirf/Gadgetron/gadgetron_image_wrap.h: In destructor ‘sirf::ImageWrap::~ImageWrap()’
:
                                                                         ^
/home/sirfuser/devel/buildVM/sources/SIRF/src/xGadgetron/cGadgetron/include/sirf/Gadgetron/gadgetron_image_wrap.h:268:4: note: in expansion of macro ‘IMAGE_PROCmpl<boost::exception_detail::error_info_injector<boost::program_options::unknown_option> >'
  what():  unrecognised option '-w'
Child aborted
src/xGadgetron/cGadgetron/tests/CMakeFiles/GENERATE_SIMULATED_TESTDATA.dir/build.make:77: recipe for target 'src/xGadgetron/cGadgetron/tests/CMakeFiles/GENERATE_SIMULATED_TESTDATA' failed

Notice that something crashes.

@paskino paskino added this to the v3.3 milestone Jul 14, 2022
@paskino
Copy link
Contributor Author

paskino commented Jul 14, 2022

Is it a Boost error? A version problem? On the VM we are using system Boost

-DUSE_SYSTEM_SWIG=On \
-DUSE_SYSTEM_Boost=On \
-DUSE_SYSTEM_Armadillo=On \
-DUSE_SYSTEM_FFTW3=On \
-DUSE_SYSTEM_HDF5=ON \

@KrisThielemans
Copy link
Member

This is a bit confusing. The error is related to boost::program_options::unknown_option which seems to imply it's calling an executable that uses program_options. However, the lines around/above it are SIRF lines. Is this output of a parallel build?

I suspect that the SIRF lines around it are a red-herring and that it's really related to the call to ismrmrd_generate_cartesian_shepp_logan
https://github.com/SyneRBI/SIRF/blob/23a7e7ade525be7f1b84e63f194a0331962699a3/src/xGadgetron/cGadgetron/tests/CMakeLists.txt#L147
which seems to imply it's running on old version of this executable. (Are you upgrading an existing VM?)

@paskino
Copy link
Contributor Author

paskino commented Jul 14, 2022

Yes, I'm trying to update the VM and got to fix a million lines.

Is it a parallel build? I do not think so as I used update_VM.sh -j1, unless -j1 is treated as a single option, hence discarded!

I think the failing line might be the one you point out.

Shouldn't the update_VM.sh also update the ismrmrd_generate_cartesian_shepp_logan executable?

@KrisThielemans
Copy link
Member

I'm trying to update the VM

to be 100% clear. you have an existing VM, and you try to update it. Correct?

got to fix a million lines.

for an existing VM, you will really need the -s option (once)

I used update_VM.sh -j1, unless -j1 is treated as a single option, hence discarded!

I haven't checked bash getopts but I do think you need a space

echo "Usage: $0 [-t tag] [-j n] [-r] [-s]"

Of course, it should have exited with a wrong option
*)
echo "Wrong option passed. Use the -h option to get some help." >&2

Shouldn't the update_VM.sh also update the ismrmrd_generate_cartesian_shepp_logan executable?

sure, but did it? git status in the sources/ISMRMRD and all that.

@paskino
Copy link
Contributor Author

paskino commented Jul 15, 2022

I have removed the ISMRMRD build directory before checking, so I can't check that now, but I will do it later on another VM.
Currently I have ISMRMRD v1.7.0 as espected in SIRF-SuperBuild 3.2.0.

The error is as you imagined

Generating Cartesian Shepp Logan Phantom!!!
Acceleration: 1
cd /home/sirfuser/devel/buildVM/builds/SIRF/build/src/xGadgetron/cGadgetron/tests/data/examples/MR && /usr/local/bin/cmake -E env LD_LIBRARY_PATH=/home/sirfuser/devel/install/lib:/home/sirfuser/devel/install/lib:/home/sirfuser/devel/install/lib64:: /home/sirfuser/devel/install/bin/ismrmrd_generate_cartesian_shepp_logan -w 64 -a 2 -o testdata_tmp_2.h5
terminate called after throwing an instance of 'boost::exception_detail::clone_impl<boost::exception_detail::error_info_injector<boost::program_options::unknown_option> >'
  what():  unrecognised option '-w'

@paskino
Copy link
Contributor Author

paskino commented Jul 15, 2022

now, ismrmrd_generate_cartesian_shepp_logan may be the old one?

sirfuser@vagrant:~/devel/buildVM$ find . | grep ismrmrd_generate_cartesian_shepp_logan

return nothing. It doesn't seem to have been built?

@KrisThielemans
Copy link
Member

you could repeat this in ~/devel. Then do an ls -l

it's hard to know what your status is though If you have an existing VM where you messed about a lot. For instance, you wrote

I have removed the ISMRMRD build directory before checking

I'd recommend starting from scratch really.

@paskino
Copy link
Contributor Author

paskino commented Jul 15, 2022

OK, here's what I did:

rm -rf buildVM
rm -rf install

./SIRF-SuperBuild/VirtualBox/scripts/update_VM.sh -j 4

It ends with a CMake error that ismrmrd_generate_cartesian_shepp_logan cannot be found.

As a matter of fact the executable should be built by ISMRMRD if HDF5, Boost and FFTW3 are found
but they are not

- Could NOT find Boost (missing: random) (found suitable version "1.65.1", minimum required is "1.43")
-- FFTW3 UNIX libraries: /usr/lib/x86_64-linux-gnu/libfftw3.so/usr/lib/x86_64-linux-gnu/libfftw3f.so
-- Found FFTW3: /usr/lib/x86_64-linux-gnu/libfftw3f.so  
FFTW3 or Boost NOT Found, cannot build utilities

But in the 3.1.0 VM Boost random is missing.

@KrisThielemans
Copy link
Member

did you use -s? It should install all required boost libraries

@paskino
Copy link
Contributor Author

paskino commented Jul 15, 2022

Indeed I did not!

@KrisThielemans
Copy link
Member

you're going to hit some of the other issues I created then...

@paskino paskino mentioned this issue Jul 18, 2022
@paskino
Copy link
Contributor Author

paskino commented Aug 3, 2022

Somewhat linked is SyneRBI/SyneRBI_VM#201

@KrisThielemans
Copy link
Member

This is now obsolete (after #755 and possibly #758 )

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants