Compile on Raspberry Pi failed

I tried to compile wfview for my RPi Model 3B+. I ffollowed instructions found here:

Commands worked until I got to this one:
make -j

Got a warning message:
…/wfview/resampler/resample.c: In function ‘update_filter’:
…/wfview/resampler/resample.c:675:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
for (j=0;jfilt_len;j++)

The make continued on until I got these error messages:
g++: fatal error: Killed signal terminated program cc1plus
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
compilation terminated.
make: *** [Makefile:787: udpserver.o] Error 1
make: *** Waiting for unfinished jobs…
make: *** [Makefile:836: moc_rigcommander.o] Error 1
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make: *** [Makefile:808: repeatersetup.o] Error 1
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make: *** [Makefile:793: qledlabel.o] Error 1
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make: *** [Makefile:768: calibrationwindow.o] Error 1
g++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
make: *** [Makefile:768: calibrationwindow.o] Error 1
^Cmake: *** Deleting file ‘moc_rigctld.o’
make: *** Deleting file ‘moc_pttyhandler.o’
make: *** Deleting file ‘moc_qledlabel.o’
make: *** Deleting file ‘moc_meter.o’
make: *** Deleting file ‘moc_udpserver.o’
make: *** Deleting file ‘moc_satellitesetup.o’
make: *** Deleting file ‘moc_calibrationwindow.o’
make: *** Deleting file ‘moc_audiohandler.o’
make: *** Deleting file ‘moc_udphandler.o’
make: *** Deleting file ‘moc_commhandler.o’
make: *** Deleting file ‘rigctld.o’
make: *** Deleting file ‘resample.o’
make: *** Deleting file ‘pttyhandler.o’
make: *** Deleting file ‘meter.o’
make: *** Deleting file ‘audiohandler.o’
make: *** Deleting file ‘udphandler.o’
make: *** Deleting file ‘commhandler.o’
make: *** Deleting file ‘wfmain.o’
make: *** [Makefile:830: moc_wfmain.o] Interrupt
make: *** [Makefile:702: main.o] Interrupt
make: *** [Makefile:724: wfmain.o] Interrupt
make: *** [Makefile:728: commhandler.o] Interrupt
make: *** [Makefile:755: udphandler.o] Interrupt
make: *** [Makefile:763: audiohandler.o] Interrupt
make: *** [Makefile:790: meter.o] Interrupt
make: *** [Makefile:797: pttyhandler.o] Interrupt
make: *** [Makefile:802: resample.o] Interrupt
make: *** [Makefile:821: rigctld.o] Interrupt
make: *** [Makefile:833: moc_commhandler.o] Interrupt
make: *** [Makefile:839: moc_udphandler.o] Interrupt
make: *** [Makefile:842: moc_audiohandler.o] Interrupt
make: *** [Makefile:845: moc_calibrationwindow.o] Interrupt
make: *** [Makefile:848: moc_satellitesetup.o] Interrupt
make: *** [Makefile:854: moc_udpserver.o] Interrupt
make: *** [Makefile:857: moc_meter.o] Interrupt
make: *** [Makefile:860: moc_qledlabel.o] Interrupt
make: *** [Makefile:863: moc_pttyhandler.o] Interrupt
make: *** [Makefile:869: moc_rigctld.o] Interrupt

My RPi is headless. I tried this using VNC in a terminal as well as using ssh. Both gave the same results.

Any suggestions?

Hi Tim

I assume that you are using a Pi with 2GB or less of RAM? For these, you need to use the command:

make

As make -j tries too many simultaneous operations with so little RAM.

73 Phil M0VSE

~WRD0001.jpg

I tried “make”. I still got the same warning early on and then I started getting “undefined reference” errors starting with this:
g++ -O2 -s -Wl,-O1 -o wfview main.o wfmain.o commhandler.o rigcommander.o freqmemory.o rigidentities.o udphandler.o logcategories.o audiohandler.o calibrationwindow.o satellitesetup.o udpserversetup.o udpserver.o meter.o qledlabel.o pttyhandler.o resample.o repeatersetup.o rigctld.o qrc_style.o qrc_resources.o moc_wfmain.o moc_commhandler.o moc_rigcommander.o moc_udphandler.o moc_audiohandler.o moc_calibrationwindow.o moc_satellitesetup.o moc_udpserversetup.o moc_udpserver.o moc_meter.o moc_qledlabel.o moc_pttyhandler.o moc_repeatersetup.o moc_rigctld.o -L./ -lqcustomplot -lQt5Multimedia -lQt5PrintSupport -lQt5Widgets -lQt5Gui -lQt5SerialPort -lQt5Network -lQt5Core -lGLESv2 -lpthread -latomic
/usr/bin/ld: main.o: in function main': main.cpp:(.text.startup+0x404): undefined reference to logSystem()’
/usr/bin/ld: main.cpp:(.text.startup+0x450): undefined reference to `logSystem()’

stdout ended up with this:
/usr/bin/ld: moc_udpserver.o:(.data.rel.ro+0x3c): undefined reference to udpServer::~udpServer()' /usr/bin/ld: moc_qledlabel.o: in function QLedLabel::qt_static_metacall(QObject*, QMetaObject::Call, int, void**)’:
moc_qledlabel.cpp:(.text+0x44): undefined reference to QLedLabel::setState(bool)' /usr/bin/ld: moc_qledlabel.cpp:(.text+0x50): undefined reference to QLedLabel::setState(QLedLabel::State)’
collect2: error: ld returned 1 exit status
make: *** [Makefile:250: wfview] Error 1

Hi Tim

I suggest trying to delete your build directory and run qmake/make again as that suggests that you may have 1/2 compiled files in your build directory.

Thanks

Phil

~WRD0001.jpg

That did the trick! Thanks.

1 Like

This solved it for me on a Raspberry Pi 4 2GB. By the way, basic functionality is working on my 7100. I was listening to your Linux in the Ham Shack podcast and wanted to try it out!
Thanks for all your work.

Daniel,

thanks for informatuon on the 7100. We have tested a few things and got some weird results there
where audio is heard but the control was completely lost. Think that Phil is interested in the diffs there of your setup/config. and his.