compiler crash for 2.0.16 (linux 20.04)

  • 3 Replies
  • 462 Views
compiler crash for 2.0.16 (linux 20.04)
« on: January 06, 2021, 12:23:52 PM »
I got the latest source code and followed the build instruction.

Some libraries are generated properly, but at linking time for the sfScope64r I regularly get the following error:

Code: [Select]
xxx:/virtual/scopefun/ScopeFun-2.0.16-Source/build$ make package
[  5%] Built target Python2716
[ 11%] Built target wxWidgets304
[ 17%] Built target SDL2209
[ 22%] Built target libUsb1022
[ 23%] Linking CXX executable ../../bin/sfScope64r
/usr/bin/ld: ../../lib/SDL2-2.0.9/sfBuild64r/build/.libs/libSDL2.a(SDL_sndioaudio.o): in function `load_sndio_syms':
/virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:95: undefined reference to `sio_open'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:96: undefined reference to `sio_close'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:97: undefined reference to `sio_setpar'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:98: undefined reference to `sio_getpar'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:99: undefined reference to `sio_start'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:100: undefined reference to `sio_stop'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:101: undefined reference to `sio_read'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:102: undefined reference to `sio_write'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:103: undefined reference to `sio_nfds'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:104: undefined reference to `sio_pollfd'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:105: undefined reference to `sio_revents'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:106: undefined reference to `sio_eof'
/usr/bin/ld: /virtual/scopefun/ScopeFun-2.0.16-Source/lib/SDL2-2.0.9/src/audio/sndio/SDL_sndioaudio.c:107: undefined reference to `sio_initpar'
collect2: error: ld returned 1 exit status
make[2]: *** [source/CMakeFiles/sfScope.dir/build.make:1008: ../bin/sfScope64r] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:252: source/CMakeFiles/sfScope.dir/all] Fehler 2
make: *** [Makefile:171: all] Fehler 2

My configuration:
Linux xxx 5.4.0-59-generic #65-Ubuntu SMP Thu Dec 10 12:01:51 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Some ideas how to proceed?
« Last Edit: January 06, 2021, 02:55:09 PM by Dejan »

*

Dejan

  • *****
  • 106
    • View Profile
Re: compiler crash for 2.0.16 (linux 20.04)
« Reply #1 on: January 06, 2021, 02:52:06 PM »
I have found a similar issue in stackoverflow... SDL_sndioaudio.c: undefined reference to `sio_*'
Could you try the recommended solution and report if it helps?

Re: compiler crash for 2.0.16 (linux 20.04)
« Reply #2 on: January 09, 2021, 07:57:44 PM »
Thank you for your hint. It wasn't helpful in that way that it gives the solution. I'm quite new with the cmake tool and I'm learning a lot of pitfalls. The described error was overcome by installing the following package:

libglw1-mesa-dev

After that I stepped into the next problem:

make  -f source/CMakeFiles/sfScope.dir/build.make source/CMakeFiles/sfScope.dir/build
make[2]: Verzeichnis „/virtual/scopefun/ScopeFun-2.0.16-Source/build“ wird betreten
make[2]: *** Keine Regel vorhanden, um das Ziel „../lib/wxWidgets-3.0.4/sfBuild64r/lib/libwxjpeg-3.0.a“,
  benötigt von „../bin/sfScope64r“, zu erstellen.  Schluss.
make[2]: Verzeichnis „/virtual/scopefun/ScopeFun-2.0.16-Source/build“ wird verlassen
make[1]: *** [CMakeFiles/Makefile2:255: source/CMakeFiles/sfScope.dir/all] Fehler 2
make[1]: Verzeichnis „/virtual/scopefun/ScopeFun-2.0.16-Source/build“ wird verlassen
make: *** [Makefile:174: all] Fehler 2

A library "libwxjpeg" shall be linked, which is not build by the delivered wxWidged library but which is in the dependency list of the generated Makefile for sfApi, SfScope and SfServer. I didn't found the generation mechanism by now, some help would be appreciated. Is there a tool for graphical visualtization of the dependencies?

Re: compiler crash for 2.0.16 (linux 20.04)
« Reply #3 on: January 09, 2021, 09:52:08 PM »
update:

I found this topic for the wxWidgets Libraries:
[https://www.scopefun.com/smf/index.php?topic=79.msg269#msg269]

After applying this solution the original problem came back.  It could be solved in the same manner:

in the same list theSDIO-library has to be added. I put as last line "sndio".

The compilation of the package was the successful.