mdsplus
mdsplus copied to clipboard
Build MDSplus failed on Ubuntu aarch64
I tried to build MDSplus using configure and make on raspberry pi which runs ubuntu20 64bit server. It aborts because lMdsMath cannot be found. I tried both the MDSplus git repository and the downloaded tarball file. Both of them stopped because of lMdsMath.
make[1]: Entering directory '/home/ubuntu/build/mitdevices' gcc -Wall -Wextra -O3 -fvisibility=hidden -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fpic -fsigned-char -shared-libgcc -fno-strict-aliasing -DLIBPREFIX=MDSplus -I/home/ubuntu/build/_include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/_include -I/home/ubuntu/build/include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/include -c -o u_of_m_spect.o ../../MDSplus-mdsplus-a204d2e/mitdevices/u_of_m_spect.c make[1]: Leaving directory '/home/ubuntu/build/mitdevices' make[1]: Entering directory '/home/ubuntu/build/mitdevices' gcc -Wall -Wextra -O3 -fvisibility=hidden -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fpic -fsigned-char -shared-libgcc -fno-strict-aliasing -DLIBPREFIX=MDSplus -I/home/ubuntu/build/_include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/_include -I/home/ubuntu/build/include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/include -o /home/ubuntu/build/lib/libMitDevices.so -shared GenDeviceCallData.o GenDeviceCvtFloatCode.o GenDeviceCvtIntCode.o GenDeviceCvtStringCode.o GenDeviceFree.o GenDeviceHeadNid.o GenDeviceSignal.o gen_device_msg.o dt200.o dt_acq16.o DevRoutines.o a12_gen.o a12.o a14_gen.o a14.o a3204_gen.o a3204.o b2408_gen.o b2408.o b3224_gen.o b3224.o b5910a_gen.o b5910a.o dsp2904_gen.o dsp2904.o ec727_gen.o ec727.o fera_gen.o fera.o h908_gen.o h908.o h911_gen.o h911.o h912_gen.o h912.o hm650_gen.o hm650.o hv1440_gen.o hv1440.o hv1443_gen.o hv1443.o hv4032a1_gen.o hv4032a1.o hv4032_gen.o hv4032.o idl_gen.o idl.o incaa16_gen.o incaa16.o incaa4_gen.o incaa4.o incaa6_gen.o incaa6.o j1819_gen.o j1819.o j221_gen.o j221.o j412_gen.o j412.o joerger_adc_gen.o joerger_adc.o joerger_adcp_gen.o joerger_adcp.o joerger_cg_gen.o joerger_cg.o joerger_dac16_gen.o joerger_dac16.o joerger_tr16_gen.o joerger_tr16.o joerger_tr612_gen.o joerger_tr612.o joerger_tr812_gen.o joerger_tr812.o l2232_gen.o l2232.o l2256_gen.o l2256.o l2415_gen.o l2415.o l3512a_gen.o l3512a.o l3512_gen.o l3512.o l4202_gen.o l4202.o l6810a_gen.o l6810a.o l6810b_gen.o l6810b.o l6810c_gen.o l6810c.o l6810_gen.o l6810.o l8100_gen.o l8100.o l8201_gen.o l8201.o l8206_gen.o l8206.o l8210_gen.o l8210.o l8212_04_gen.o l8212.o l8212_08_gen.o l8212_16_gen.o l8212_32_gen.o l8501_gen.o l8501.o l8590_gen.o l8590.o l8590_mem_gen.o l8590_mem.o l8590_sclr_gen.o l8818_gen.o l8818.o l8828_gen.o l8828.o mdsdcl_gen.o mdsdcl.o mit__clock_gen.o mit__clock.o mit_clock_gen.o mit_clock.o mit__dclock_gen.o mit__dclock.o mit_dclock_gen.o mit_dclock.o mit_decoder_gen.o mit_decoder.o mit_encoder_gen.o mit_encoder.o mit__gate_gen.o mit__gate.o mit_gate_gen.o mit_gclock_gen.o mit_gclock.o mit_pulse_gen.o mit_pulse-gate.o mpb__decoder_gen.o mpb__decoder.o paragon_hist_gen.o paragon_hist.o paragon_rpt_gen.o paragon_rpt.o preamp_gen.o preamp.o reticon120_gen.o reticon120.o t2812_gen.o t2814_gen.o t2824_gen.o t2825_gen.o t2860_gen.o t4012_gen.o t4012.o umccd_gen.o u_of_m_spect_gen.o u_of_m_spect.o -L/home/ubuntu/build/lib/ -lCamShr -lXmdsShr -lMdsdcl -lTdiShr -lTreeShr -lMdsShr -lm -lMrm -lXm -lSM -lICE -lXt -lX11 -lm -L/home/ubuntu/build/lib/ -lMdsMath /usr/bin/ld: cannot find -lMdsMath collect2: error: ld returned 1 exit status make[1]: *** [Makefile:287: /home/ubuntu/build/lib/libMitDevices.so] Error 1 make[1]: Leaving directory '/home/ubuntu/build/mitdevices' make: *** [Makefile:100: mitdevices] Error 2
lMdsMath should be created when you make the source directory :
mdsplus/math
The easiest way to build is to use docker. On an X86 based computer. For RPi the commands would be:
cd mdsplus
mkdir build
cd build
../deploy/build.sh --os=bootstrap
../deploy/build.sh --os=raspberrypi --release
..... ohh you want ubuntu on RPi - hmmm
So on the PI
cd mdsplus
./bootstrap
mkdir ../build
cd ../build
../mdsplus/configure
make
My guess is that what happened to you is the build of libMdsMath failed and that is why subsequent links could not find it.
-Josh
On 12/7/21 10:54 PM, Wang Binbin wrote:
I tried to build MDSplus using configure and make on raspberry pi which runs ubuntu20 64bit server. It aborts because lMdsMath cannot be found. I tried both the MDSplus git repository and the downloaded tarball file. Both of them stopped because of lMdsMath.
|make[1]: Entering directory '/home/ubuntu/build/mitdevices' gcc -Wall -Wextra -O3 -fvisibility=hidden -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fpic -fsigned-char -shared-libgcc -fno-strict-aliasing -DLIBPREFIX=MDSplus -I/home/ubuntu/build/_include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/_include -I/home/ubuntu/build/include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/include -c -o u_of_m_spect.o ../../MDSplus-mdsplus-a204d2e/mitdevices/u_of_m_spect.c make[1]: Leaving directory '/home/ubuntu/build/mitdevices' make[1]: Entering directory '/home/ubuntu/build/mitdevices' gcc -Wall -Wextra -O3 -fvisibility=hidden -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -fpic -fsigned-char -shared-libgcc -fno-strict-aliasing -DLIBPREFIX=MDSplus -I/home/ubuntu/build/_include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/_include -I/home/ubuntu/build/include -I/home/ubuntu/build/../MDSplus-mdsplus-a204d2e/include -o /home/ubuntu/build/lib/libMitDevices.so -shared GenDeviceCallData.o GenDeviceCvtFloatCode.o GenDeviceCvtIntCode.o GenDeviceCvtStringCode.o GenDeviceFree.o GenDeviceHeadNid.o GenDeviceSignal.o gen_device_msg.o dt200.o dt_acq16.o DevRoutines.o a12_gen.o a12.o a14_gen.o a14.o a3204_gen.o a3204.o b2408_gen.o b2408.o b3224_gen.o b3224.o b5910a_gen.o b5910a.o dsp2904_gen.o dsp2904.o ec727_gen.o ec727.o fera_gen.o fera.o h908_gen.o h908.o h911_gen.o h911.o h912_gen.o h912.o hm650_gen.o hm650.o hv1440_gen.o hv1440.o hv1443_gen.o hv1443.o hv4032a1_gen.o hv4032a1.o hv4032_gen.o hv4032.o idl_gen.o idl.o incaa16_gen.o incaa16.o incaa4_gen.o incaa4.o incaa6_gen.o incaa6.o j1819_gen.o j1819.o j221_gen.o j221.o j412_gen.o j412.o joerger_adc_gen.o joerger_adc.o joerger_adcp_gen.o joerger_adcp.o joerger_cg_gen.o joerger_cg.o joerger_dac16_gen.o joerger_dac16.o joerger_tr16_gen.o joerger_tr16.o joerger_tr612_gen.o joerger_tr612.o joerger_tr812_gen.o joerger_tr812.o l2232_gen.o l2232.o l2256_gen.o l2256.o l2415_gen.o l2415.o l3512a_gen.o l3512a.o l3512_gen.o l3512.o l4202_gen.o l4202.o l6810a_gen.o l6810a.o l6810b_gen.o l6810b.o l6810c_gen.o l6810c.o l6810_gen.o l6810.o l8100_gen.o l8100.o l8201_gen.o l8201.o l8206_gen.o l8206.o l8210_gen.o l8210.o l8212_04_gen.o l8212.o l8212_08_gen.o l8212_16_gen.o l8212_32_gen.o l8501_gen.o l8501.o l8590_gen.o l8590.o l8590_mem_gen.o l8590_mem.o l8590_sclr_gen.o l8818_gen.o l8818.o l8828_gen.o l8828.o mdsdcl_gen.o mdsdcl.o mit__clock_gen.o mit__clock.o mit_clock_gen.o mit_clock.o mit__dclock_gen.o mit__dclock.o mit_dclock_gen.o mit_dclock.o mit_decoder_gen.o mit_decoder.o mit_encoder_gen.o mit_encoder.o mit__gate_gen.o mit__gate.o mit_gate_gen.o mit_gclock_gen.o mit_gclock.o mit_pulse_gen.o mit_pulse-gate.o mpb__decoder_gen.o mpb__decoder.o paragon_hist_gen.o paragon_hist.o paragon_rpt_gen.o paragon_rpt.o preamp_gen.o preamp.o reticon120_gen.o reticon120.o t2812_gen.o t2814_gen.o t2824_gen.o t2825_gen.o t2860_gen.o t4012_gen.o t4012.o umccd_gen.o u_of_m_spect_gen.o u_of_m_spect.o -L/home/ubuntu/build/lib/ -lCamShr -lXmdsShr -lMdsdcl -lTdiShr -lTreeShr -lMdsShr -lm -lMrm -lXm -lSM -lICE -lXt -lX11 -lm -L/home/ubuntu/build/lib/ -lMdsMath /usr/bin/ld: cannot find -lMdsMath collect2: error: ld returned 1 exit status make[1]: *** [Makefile:287: /home/ubuntu/build/lib/libMitDevices.so] Error 1 make[1]: Leaving directory '/home/ubuntu/build/mitdevices' make: *** [Makefile:100: mitdevices] Error 2|
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/MDSplus/mdsplus/issues/2429, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABY5AZMUIUB56FIXDD54BTTUP3JGDANCNFSM5JSZVCHQ. Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
-- Joshua Stillerman Research Engineer MIT Plasma Science and Fusion Center 617.253.8176 @.***
Thank you! Josh
I go back to see the bash script and find it failed to build math because of Wall: Command not found. Do you have any idea to solve this problem?
make[1]: Leaving directory '/home/ubuntu/build/mdslib'
make -C math -j -l 3.6 -O
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/caxpy.f -o caxpy.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: caxpy.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/daxpy.f -o daxpy.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: daxpy.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/saxpy.f -o saxpy.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: saxpy.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/zaxpy.f -o zaxpy.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: zaxpy.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/cgeco.f -o cgeco.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: cgeco.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/dgeco.f -o dgeco.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: dgeco.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/sgeco.f -o sgeco.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: sgeco.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c ../../mdsplus-stable/math/blas/zgeco.f -o zgeco.o -Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -Wno-error
make[1]: Wall: Command not found
make[1]: [Makefile:71: zgeco.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o cmul.o ../../mdsplus-stable/math/cmul.f
make[1]: Wall: Command not found
make[1]: [<builtin>: cmul.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o csint.o ../../mdsplus-stable/math/csint.f
make[1]: Wall: Command not found
make[1]: [<builtin>: csint.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o csval.o ../../mdsplus-stable/math/csval.f
make[1]: Wall: Command not found
make[1]: [<builtin>: csval.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o dcsint.o ../../mdsplus-stable/math/dcsint.f
make[1]: Wall: Command not found
make[1]: [<builtin>: dcsint.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o dcsval.o ../../mdsplus-stable/math/dcsval.f
make[1]: Wall: Command not found
make[1]: [<builtin>: dcsval.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o dmul.o ../../mdsplus-stable/math/dmul.f
make[1]: Wall: Command not found
make[1]: [<builtin>: dmul.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o dpermu.o ../../mdsplus-stable/math/dpermu.f
make[1]: Wall: Command not found
make[1]: [<builtin>: dpermu.o] Error 127 (ignored)
make[1]: Leaving directory '/home/ubuntu/build/math'
make[1]: Entering directory '/home/ubuntu/build/math'
Wall -Wextra -O3 -fno-range-check -fpic -fno-backslash -Wno-maybe-uninitialized -Wno-compare-reals -c -o dppval.o ../../mdsplus-stable/math/dppval.f
I suspect you don't have gfortran installed. The Wall message is actually the -Wall option to gfortran and the command line was actually just missing the fortran compiler command.