• sbbs fails to compile on ubuntu 21.10

    From Nigel Reed@VERT to GitLab issue in main/sbbs on Tue Oct 19 07:32:23 2021
    open https://gitlab.synchro.net/main/sbbs/-/issues/299

    bbs@testbbs:~/repo/3rdp$ gcc -v 2>&1|tail -1
    gcc version 11.2.0 (Ubuntu 11.2.0-7ubuntu2)

    At this stage
    Linking gcc.linux.x64.exe.release/sbbs
    g++ -Lgcc.linux.x64.lib.release -lutil -L/home/bbs/repo/src/sbbs3/../uifc/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../xpdev/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../smblib/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../encode/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../hash/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../conio/gcc.linux.x64.lib.release -L/usr/local/lib -L/usr/lib/x86_64-linux-gnu -L/home/bbs/repo/src/sbbs3/../../3rdp/gcc.linux.x64.release/mozjs/lib -L/home/bbs/repo/src/sbbs3/../../3rdp/gcc.linux.x64.release/cl -o gcc.linux.x64.exe.release/sbbs gcc.linux.x64.obj.release-mt/sbbscon.o gcc.linux.x64.obj.release-mt/sbbs_status.o gcc.linux.x64.obj.release-mt/sbbs_ini.o -lcap -lsbbs -lftpsrvr -lwebsrvr -lmailsrvr -lservices -lsmb -lxpdev_mt -lm -lpthread -ldl

    /usr/bin/ld: gcc.linux.x64.lib.release/libsbbs.so: undefined reference to `pthread_yield'
    collect2: error: ld returned 1 exit status


    It appears pthread-yield is no longer in libpthread.so in Ubuntu 21.10

    bbs@testbbs:/lib/x86_64-linux-gnu$ nm -s libpthread.so.0|grep yield bbs@testbbs:/lib/x86_64-linux-gnu$

    Whereas on 20.04:
    root@wibble:~# nm -s /usr/lib/x86_64-linux-gnu/libpthread.so|grep yield 000000000000ad70 T pthread_yield
    U sched_yield@@GLIBC_2.2.5

    The compilation issue was first noticed by rjwboys on #sycnrhonet and verified by me.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to GitLab issue in main/sbbs on Tue Oct 19 18:22:39 2021
    close https://gitlab.synchro.net/main/sbbs/-/issues/299

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nigel Reed@VERT to GitLab issue in main/sbbs on Tue Oct 19 19:06:03 2021
    reopen https://gitlab.synchro.net/main/sbbs/-/issues/299

    bbs@testbbs:~/repo/3rdp$ gcc -v 2>&1|tail -1
    gcc version 11.2.0 (Ubuntu 11.2.0-7ubuntu2)

    At this stage
    Linking gcc.linux.x64.exe.release/sbbs
    g++ -Lgcc.linux.x64.lib.release -lutil -L/home/bbs/repo/src/sbbs3/../uifc/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../xpdev/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../smblib/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../encode/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../hash/gcc.linux.x64.lib.release -L/home/bbs/repo/src/sbbs3/../conio/gcc.linux.x64.lib.release -L/usr/local/lib -L/usr/lib/x86_64-linux-gnu -L/home/bbs/repo/src/sbbs3/../../3rdp/gcc.linux.x64.release/mozjs/lib -L/home/bbs/repo/src/sbbs3/../../3rdp/gcc.linux.x64.release/cl -o gcc.linux.x64.exe.release/sbbs gcc.linux.x64.obj.release-mt/sbbscon.o gcc.linux.x64.obj.release-mt/sbbs_status.o gcc.linux.x64.obj.release-mt/sbbs_ini.o -lcap -lsbbs -lftpsrvr -lwebsrvr -lmailsrvr -lservices -lsmb -lxpdev_mt -lm -lpthread -ldl

    /usr/bin/ld: gcc.linux.x64.lib.release/libsbbs.so: undefined reference to `pthread_yield'
    collect2: error: ld returned 1 exit status


    It appears pthread-yield is no longer in libpthread.so in Ubuntu 21.10

    bbs@testbbs:/lib/x86_64-linux-gnu$ nm -s libpthread.so.0|grep yield bbs@testbbs:/lib/x86_64-linux-gnu$

    Whereas on 20.04:
    root@wibble:~# nm -s /usr/lib/x86_64-linux-gnu/libpthread.so|grep yield 000000000000ad70 T pthread_yield
    U sched_yield@@GLIBC_2.2.5

    The compilation issue was first noticed by rjwboys on #sycnrhonet and verified by me.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Nigel Reed@VERT to GitLab note in main/sbbs on Tue Oct 19 19:07:23 2021
    https://gitlab.synchro.net/main/sbbs/-/issues/299#note_2126

    Commit does not fix the issue. Confirmed by rjwboys on irc.
    Linking gcc.linux.x64.lib.release/libwebsrvr.so
    Linking gcc.linux.x64.exe.release/sbbs
    /usr/bin/ld: gcc.linux.x64.lib.release/libsbbs.so: undefined reference to `pthread_yield'

    Does it also need fixing in repo/3rdp/src/cl/kernel/thread.h ?

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net