• Syncterm is not compiling in linux

    From plt@VERT/SBBS to All on Sun Nov 22 01:37:07 2020
    The folkes in the #debian channel told me the issue with syncterm is failing to be compiled is a lib file is missing in the /sbbs/repo/src/syncterm directory.

    I tried using gmake and make and the same issue:

    gmake
    gmake -C ../xpdev mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/xpdev'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/xpdev'
    gmake -C ../conio mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/conio'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/conio'
    gmake -C ../uifc mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/uifc'
    gmake -C ../conio mtlib
    gmake[2]: Entering directory '/sbbs/repo/src/conio'
    gmake[2]: Nothing to be done for 'mtlib'.
    gmake[2]: Leaving directory '/sbbs/repo/src/conio'
    Creating gcc.linux.x64.lib.debug/libuifc_mt.a ...
    gmake[1]: Leaving directory '/sbbs/repo/src/uifc'
    gmake -C ../../3rdp/build cryptlib
    gmake[1]: Entering directory '/sbbs/repo/3rdp/build'
    gmake[1]: Nothing to be done for 'cryptlib'.
    gmake[1]: Leaving directory '/sbbs/repo/3rdp/build'
    gmake -C ../encode lib
    gmake[1]: Entering directory '/sbbs/repo/src/encode'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/encode'
    gmake -C ../hash lib
    gmake[1]: Entering directory '/sbbs/repo/src/hash'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/hash'
    Linking gcc.linux.x64.exe.debug/syncterm
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `rv_termset': /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:7658: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9158: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9159: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9160: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9161: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9168: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9174: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:9174: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9177: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9182: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `do_rip_command': /sbbs/repo/src/syncterm/ripper.c:9617: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9619: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9657: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9662: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9680: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9681: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9682: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9683: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10242: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10616: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10617: undefined reference to `vstat'
    collect2: error: ld returned 1 exit status
    gmake: *** [GNUmakefile:105: gcc.linux.x64.exe.debug/syncterm] Error 1 plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$ make clean
    Deleting gcc.linux.x64.obj.debug/
    Deleting gcc.linux.x64.obj.debug-mt/
    Deleting gcc.linux.x64.lib.debug/
    Deleting gcc.linux.x64.exe.debug/
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$ gmake
    gmake -C ../xpdev mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/xpdev'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/xpdev'
    gmake -C ../conio mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/conio'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/conio'
    gmake -C ../uifc mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/uifc'
    gmake -C ../conio mtlib
    gmake[2]: Entering directory '/sbbs/repo/src/conio'
    gmake[2]: Nothing to be done for 'mtlib'.
    gmake[2]: Leaving directory '/sbbs/repo/src/conio'
    Creating gcc.linux.x64.lib.debug/libuifc_mt.a ...
    gmake[1]: Leaving directory '/sbbs/repo/src/uifc'
    gmake -C ../../3rdp/build cryptlib
    gmake[1]: Entering directory '/sbbs/repo/3rdp/build'
    gmake[1]: Nothing to be done for 'cryptlib'.
    gmake[1]: Leaving directory '/sbbs/repo/3rdp/build'
    Compiling bbslist.c
    bbslist.c: In function `read_item':
    bbslist.c:677:81: warning: passing argument 4 of `iniGetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    low_control = fc_from_enum(iniGetEnum(section, NULL, "FlowControl", fc_enum, 0));
    ^~~~~~~

    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:179:20: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    ,str_list_t names, unsigned deflt);
    ~~~~~~~~~~~^~~~~
    bbslist.c: In function `edit_list':
    bbslist.c:1042:83: warning: passing argument 8 of `uifc.list' from incompatible pointer type [-Wincompatible-pointer-types]
    switch (uifc.list(WIN_SAV, 0, 0, 0, &j, NULL, "Flow Control", fc_names)) {
    ^~~~~~~~

    bbslist.c:1042:83: note: expected `char **' but argument is of type `const char **'
    bbslist.c:1049:79: warning: passing argument 4 of `iniSetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    iniSetEnum(&inifile, itemname, "FlowControl", fc_enum, j, &ini_style);
    ^~~~~~~

    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:240:19: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    DLLEXPORT char* iniSetEnum(str_list_t*, const char* section, const char* key, str_list_t names
    ^~~~~~~~~~
    bbslist.c: In function `add_bbs':
    bbslist.c:1340:52: warning: passing argument 4 of `iniSetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    iniSetEnum(&inifile, bbs->name, "FlowControl", fc_enum, fc_to_enum(bbs->flow_control), &ini_style);
    ^~~~~~~
    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:240:19: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    DLLEXPORT char* iniSetEnum(str_list_t*, const char* section, const char* key, str_list_t names
    ^~~~~~~~~~
    Compiling uifcinit.c
    Compiling ../uifc/filepick.c
    ../uifc/filepick.c: In function `filepick':
    ../uifc/filepick.c:537:23: warning: `%s' directive writing up to 4096 bytes into a region of size between 4095 and 4097 [-Wformat-overflow=]
    sprintf(cpath,"%s%s",drive,tdir);
    ^~ ~~~~
    ../uifc/filepick.c:537:6: note: `sprintf' output between 1 and 4099 bytes into a destination of size 4097
    sprintf(cpath,"%s%s",drive,tdir);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../uifc/filepick.c:566:27: warning: `%s' directive writing up to 16384 bytes into a region of size between 16383 and 20481 [-Wformat-overflow=]
    sprintf(cfile,"%s%s%s",drive,tdir,cmsk);
    ^~ ~~~~
    ../uifc/filepick.c:566:8: note: `sprintf' output between 1 and 20483 bytes into a destination of size 20481
    sprintf(cfile,"%s%s%s",drive,tdir,cmsk);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling fonts.c
    Compiling ripper.c
    ripper.c: In function `draw_line':
    ripper.c:8134:21: warning: variable `mine' set but not used [-Wunused-but-set-variable]
    int *minc, *mins, *mine, *mino, *mind;
    ^~~~
    ripper.c: In function `set_line':
    ripper.c:8245:21: warning: variable `mine' set but not used [-Wunused-but-set-variable]
    int *minc, *mins, *mine, *mino, *mind;
    ^~~~
    ripper.c: In function `draw_button':
    ripper.c:8449:19: warning: variable `ds' set but not used [-Wunused-but-set-variable]
    uint32_t fg, bg, ds, ch, cs, su, ul, cc;
    ^~
    ripper.c:8449:11: warning: variable `fg' set but not used [-Wunused-but-set-variable]
    uint32_t fg, bg, ds, ch, cs, su, ul, cc;
    ^~
    ripper.c: In function `do_popup':
    ripper.c:8782:11: warning: variable `blue' set but not used [-Wunused-but-set-variable]
    uint32_t blue;
    ^~~~
    ripper.c:8778:11: warning: variable `yellow' set but not used [-Wunused-but-set-variable]
    uint32_t yellow;
    ^~~~~~
    ripper.c: In function `flood_fill':
    ripper.c:9443:39: warning: suggest parentheses around `+' in operand of `&' [-Wparentheses]
    if (rip.fill_pattern[rip.viewport.sy + y1 & 0x07] & (0x80 >> (rip.viewport.sx + x1 & 0x07)))
    ~~~~~~~~~~~~~~~~^~~~
    ripper.c:9443:80: warning: suggest parentheses around `+' in operand of `&' [-Wparentheses]
    ll_pattern[rip.viewport.sy + y1 & 0x07] & (0x80 >> (rip.viewport.sx + x1 & 0x07)))
    ~~~~~~~~~~~~~~~~^~~~

    At top level:
    ripper.c:9430:1: warning: `flood_fill' defined but not used [-Wunused-function]
    flood_fill(struct ciolib_pixels *pix, int x1, int y1, uint32_t edge, uint32_t fillfg, uint32_t fillbg)
    ^~~~~~~~~~
    Compiling rlogin.c
    Compiling telnet_io.c
    Compiling conn_telnet.c
    Compiling conn.c
    Compiling ../sbbs3/telnet.c
    Compiling term.c
    term.c: In function `doterm':
    term.c:2787:38: warning: `sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^
    term.c:2787:7: note: `sprintf' output between 13 and 43 bytes into a destination of size 42
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    term.c:2963:40: warning: `sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^
    term.c:2963:9: note: `sprintf' output between 13 and 43 bytes into a destination of size 42
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling window.c
    Compiling menu.c
    Compiling ../sbbs3/zmodem.c
    Compiling ../sbbs3/xmodem.c
    Compiling st_crypt.c
    Compiling syncterm.c
    Compiling ooii.c
    ooii.c: In function `readSmallMenu':
    ooii.c:926:20: warning: `)
    ' directive writing 3 bytes into a region of size between 1 and 255 [-Wformat-overflow=]
    sprintf(buf,"(%s)\r\n",menuBlock);
    ^~~~~
    ooii.c:926:4: note: `sprintf' output between 5 and 259 bytes into a destination of size 256
    sprintf(buf,"(%s)\r\n",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ooii.c:931:19: warning: ` current, ' directive writing 10 bytes into a region of size between 2 and 256 [-Wformat-overflow=]
    sprintf(buf,"%s current, ",menuBlock);
    ^~~~~~~~~~
    ooii.c:931:4: note: `sprintf' output between 11 and 265 bytes into a destination of size 256
    sprintf(buf,"%s current, ",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ooii.c:934:19: warning: ` total
    ' directive writing 8 bytes into a region of size between 2 and 256 [-Wformat-overflow=]
    sprintf(buf,"%s total\r\n",menuBlock);
    ^~~~~~~~~~
    ooii.c:934:4: note: `sprintf' output between 9 and 263 bytes into a destination of size 256
    sprintf(buf,"%s total\r\n",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling ooii_logons.c
    Compiling ooii_cmenus.c
    Compiling ooii_bmenus.c
    Compiling ooii_sounds.c
    Compiling ssh.c
    Compiling ../comio/comio_nix.c
    Compiling modem.c
    Compiling ../comio/comio.c
    Compiling conn_pty.c
    gmake -C ../encode lib
    gmake[1]: Entering directory '/sbbs/repo/src/encode'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/encode'
    gmake -C ../hash lib
    gmake[1]: Entering directory '/sbbs/repo/src/hash'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/hash'
    Linking gcc.linux.x64.exe.debug/syncterm
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `rv_termset': /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:7658: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9158: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9159: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9160: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9161: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9168: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9174: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:9174: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9177: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9182: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `do_rip_command': /sbbs/repo/src/syncterm/ripper.c:9617: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9619: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9657: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9662: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9680: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9681: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9682: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9683: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10242: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10616: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10617: undefined reference to `vstat'
    collect2: error: ld returned 1 exit status
    gmake: *** [GNUmakefile:105: gcc.linux.x64.exe.debug/syncterm] Error 1 plt@sbbs:/sbbs/repo/src/syncterm$

    RAW Paste Data
    gmake
    gmake -C ../xpdev mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/xpdev'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/xpdev'
    gmake -C ../conio mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/conio'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/conio'
    gmake -C ../uifc mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/uifc'
    gmake -C ../conio mtlib
    gmake[2]: Entering directory '/sbbs/repo/src/conio'
    gmake[2]: Nothing to be done for 'mtlib'.
    gmake[2]: Leaving directory '/sbbs/repo/src/conio'
    Creating gcc.linux.x64.lib.debug/libuifc_mt.a ...
    gmake[1]: Leaving directory '/sbbs/repo/src/uifc'
    gmake -C ../../3rdp/build cryptlib
    gmake[1]: Entering directory '/sbbs/repo/3rdp/build'
    gmake[1]: Nothing to be done for 'cryptlib'.
    gmake[1]: Leaving directory '/sbbs/repo/3rdp/build'
    gmake -C ../encode lib
    gmake[1]: Entering directory '/sbbs/repo/src/encode'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/encode'
    gmake -C ../hash lib
    gmake[1]: Entering directory '/sbbs/repo/src/hash'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/hash'
    Linking gcc.linux.x64.exe.debug/syncterm
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `rv_termset': /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:7658: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9158: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9159: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9160: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9161: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9168: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9174: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:9174: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9177: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9182: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `do_rip_command': /sbbs/repo/src/syncterm/ripper.c:9617: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9619: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9657: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9662: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9680: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9681: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9682: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9683: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10242: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10616: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10617: undefined reference to `vstat'
    collect2: error: ld returned 1 exit status
    gmake: *** [GNUmakefile:105: gcc.linux.x64.exe.debug/syncterm] Error 1 plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$ make clean
    Deleting gcc.linux.x64.obj.debug/
    Deleting gcc.linux.x64.obj.debug-mt/
    Deleting gcc.linux.x64.lib.debug/
    Deleting gcc.linux.x64.exe.debug/
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$
    plt@sbbs:/sbbs/repo/src/syncterm$ gmake
    gmake -C ../xpdev mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/xpdev'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/xpdev'
    gmake -C ../conio mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/conio'
    gmake[1]: Nothing to be done for 'mtlib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/conio'
    gmake -C ../uifc mtlib
    gmake[1]: Entering directory '/sbbs/repo/src/uifc'
    gmake -C ../conio mtlib
    gmake[2]: Entering directory '/sbbs/repo/src/conio'
    gmake[2]: Nothing to be done for 'mtlib'.
    gmake[2]: Leaving directory '/sbbs/repo/src/conio'
    Creating gcc.linux.x64.lib.debug/libuifc_mt.a ...
    gmake[1]: Leaving directory '/sbbs/repo/src/uifc'
    gmake -C ../../3rdp/build cryptlib
    gmake[1]: Entering directory '/sbbs/repo/3rdp/build'
    gmake[1]: Nothing to be done for 'cryptlib'.
    gmake[1]: Leaving directory '/sbbs/repo/3rdp/build'
    Compiling bbslist.c
    bbslist.c: In function `read_item':
    bbslist.c:677:81: warning: passing argument 4 of `iniGetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    low_control = fc_from_enum(iniGetEnum(section, NULL, "FlowControl", fc_enum, 0));
    ^~~~~~~

    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:179:20: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    ,str_list_t names, unsigned deflt);
    ~~~~~~~~~~~^~~~~
    bbslist.c: In function `edit_list':
    bbslist.c:1042:83: warning: passing argument 8 of `uifc.list' from incompatible pointer type [-Wincompatible-pointer-types]
    switch (uifc.list(WIN_SAV, 0, 0, 0, &j, NULL, "Flow Control", fc_names)) {
    ^~~~~~~~

    bbslist.c:1042:83: note: expected `char **' but argument is of type `const char **'
    bbslist.c:1049:79: warning: passing argument 4 of `iniSetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    iniSetEnum(&inifile, itemname, "FlowControl", fc_enum, j, &ini_style);
    ^~~~~~~

    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:240:19: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    DLLEXPORT char* iniSetEnum(str_list_t*, const char* section, const char* key, str_list_t names
    ^~~~~~~~~~
    bbslist.c: In function `add_bbs':
    bbslist.c:1340:52: warning: passing argument 4 of `iniSetEnum' from incompatible pointer type [-Wincompatible-pointer-types]
    iniSetEnum(&inifile, bbs->name, "FlowControl", fc_enum, fc_to_enum(bbs->flow_control), &ini_style);
    ^~~~~~~
    In file included from bbslist.c:8:
    ../xpdev/ini_file.h:240:19: note: expected `str_list_t' {aka `char **'} but argument is of type `const char **'
    DLLEXPORT char* iniSetEnum(str_list_t*, const char* section, const char* key, str_list_t names
    ^~~~~~~~~~
    Compiling uifcinit.c
    Compiling ../uifc/filepick.c
    ../uifc/filepick.c: In function `filepick':
    ../uifc/filepick.c:537:23: warning: `%s' directive writing up to 4096 bytes into a region of size between 4095 and 4097 [-Wformat-overflow=]
    sprintf(cpath,"%s%s",drive,tdir);
    ^~ ~~~~
    ../uifc/filepick.c:537:6: note: `sprintf' output between 1 and 4099 bytes into a destination of size 4097
    sprintf(cpath,"%s%s",drive,tdir);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ../uifc/filepick.c:566:27: warning: `%s' directive writing up to 16384 bytes into a region of size between 16383 and 20481 [-Wformat-overflow=]
    sprintf(cfile,"%s%s%s",drive,tdir,cmsk);
    ^~ ~~~~
    ../uifc/filepick.c:566:8: note: `sprintf' output between 1 and 20483 bytes into a destination of size 20481
    sprintf(cfile,"%s%s%s",drive,tdir,cmsk);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling fonts.c
    Compiling ripper.c
    ripper.c: In function `draw_line':
    ripper.c:8134:21: warning: variable `mine' set but not used [-Wunused-but-set-variable]
    int *minc, *mins, *mine, *mino, *mind;
    ^~~~
    ripper.c: In function `set_line':
    ripper.c:8245:21: warning: variable `mine' set but not used [-Wunused-but-set-variable]
    int *minc, *mins, *mine, *mino, *mind;
    ^~~~
    ripper.c: In function `draw_button':
    ripper.c:8449:19: warning: variable `ds' set but not used [-Wunused-but-set-variable]
    uint32_t fg, bg, ds, ch, cs, su, ul, cc;
    ^~
    ripper.c:8449:11: warning: variable `fg' set but not used [-Wunused-but-set-variable]
    uint32_t fg, bg, ds, ch, cs, su, ul, cc;
    ^~
    ripper.c: In function `do_popup':
    ripper.c:8782:11: warning: variable `blue' set but not used [-Wunused-but-set-variable]
    uint32_t blue;
    ^~~~
    ripper.c:8778:11: warning: variable `yellow' set but not used [-Wunused-but-set-variable]
    uint32_t yellow;
    ^~~~~~
    ripper.c: In function `flood_fill':
    ripper.c:9443:39: warning: suggest parentheses around `+' in operand of `&' [-Wparentheses]
    if (rip.fill_pattern[rip.viewport.sy + y1 & 0x07] & (0x80 >> (rip.viewport.sx + x1 & 0x07)))
    ~~~~~~~~~~~~~~~~^~~~
    ripper.c:9443:80: warning: suggest parentheses around `+' in operand of `&' [-Wparentheses]
    ll_pattern[rip.viewport.sy + y1 & 0x07] & (0x80 >> (rip.viewport.sx + x1 & 0x07)))
    ~~~~~~~~~~~~~~~~^~~~

    At top level:
    ripper.c:9430:1: warning: `flood_fill' defined but not used [-Wunused-function]
    flood_fill(struct ciolib_pixels *pix, int x1, int y1, uint32_t edge, uint32_t fillfg, uint32_t fillbg)
    ^~~~~~~~~~
    Compiling rlogin.c
    Compiling telnet_io.c
    Compiling conn_telnet.c
    Compiling conn.c
    Compiling ../sbbs3/telnet.c
    Compiling term.c
    term.c: In function `doterm':
    term.c:2787:38: warning: `sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^
    term.c:2787:7: note: `sprintf' output between 13 and 43 bytes into a destination of size 42
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    term.c:2963:40: warning: `sprintf' may write a terminating nul past the end of the destination [-Wformat-overflow=]
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^
    term.c:2963:9: note: `sprintf' output between 13 and 43 bytes into a destination of size 42
    sprintf(title, "SyncTERM - %s\n", bbs->name);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling window.c
    Compiling menu.c
    Compiling ../sbbs3/zmodem.c
    Compiling ../sbbs3/xmodem.c
    Compiling st_crypt.c
    Compiling syncterm.c
    Compiling ooii.c
    ooii.c: In function `readSmallMenu':
    ooii.c:926:20: warning: `)
    ' directive writing 3 bytes into a region of size between 1 and 255 [-Wformat-overflow=]
    sprintf(buf,"(%s)\r\n",menuBlock);
    ^~~~~
    ooii.c:926:4: note: `sprintf' output between 5 and 259 bytes into a destination of size 256
    sprintf(buf,"(%s)\r\n",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ooii.c:931:19: warning: ` current, ' directive writing 10 bytes into a region of size between 2 and 256 [-Wformat-overflow=]
    sprintf(buf,"%s current, ",menuBlock);
    ^~~~~~~~~~
    ooii.c:931:4: note: `sprintf' output between 11 and 265 bytes into a destination of size 256
    sprintf(buf,"%s current, ",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ooii.c:934:19: warning: ` total
    ' directive writing 8 bytes into a region of size between 2 and 256 [-Wformat-overflow=]
    sprintf(buf,"%s total\r\n",menuBlock);
    ^~~~~~~~~~
    ooii.c:934:4: note: `sprintf' output between 9 and 263 bytes into a destination of size 256
    sprintf(buf,"%s total\r\n",menuBlock);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    Compiling ooii_logons.c
    Compiling ooii_cmenus.c
    Compiling ooii_bmenus.c
    Compiling ooii_sounds.c
    Compiling ssh.c
    Compiling ../comio/comio_nix.c
    Compiling modem.c
    Compiling ../comio/comio.c
    Compiling conn_pty.c
    gmake -C ../encode lib
    gmake[1]: Entering directory '/sbbs/repo/src/encode'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/encode'
    gmake -C ../hash lib
    gmake[1]: Entering directory '/sbbs/repo/src/hash'
    gmake[1]: Nothing to be done for 'lib'.
    gmake[1]: Leaving directory '/sbbs/repo/src/hash'
    Linking gcc.linux.x64.exe.debug/syncterm
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `rv_termset': /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7653: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:7658: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:7658: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9158: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9159: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9160: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9161: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9168: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9174: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o:/sbbs/repo/src/syncterm/ripper.c:9174: more undefined references to `vstat' follow
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `reinit_screen': /sbbs/repo/src/syncterm/ripper.c:9177: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9182: undefined reference to `vstat'
    /usr/bin/ld: gcc.linux.x64.obj.debug-mt/ripper.o: in function `do_rip_command': /sbbs/repo/src/syncterm/ripper.c:9617: undefined reference to `vstatlock' /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9618: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9619: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9657: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9662: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9680: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9681: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9682: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:9683: undefined reference to `vstatlock'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10242: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10616: undefined reference to `vstat'
    /usr/bin/ld: /sbbs/repo/src/syncterm/ripper.c:10617: undefined reference to `vstat'
    collect2: error: ld returned 1 exit status
    gmake: *** [GNUmakefile:105: gcc.linux.x64.exe.debug/syncterm] Error 1 plt@sbbs:/sbbs/repo/src/syncterm$

    Public Pastes
    My Log File
    HTML 5 | 33 min ago
    My Log File
    HTML 5 | 44 min ago
    Change_vote
    Python | 1 hour ago
    Car
    Batch | 1 hour ago
    Minecraft CC Tree Sensor
    Lua | 1 hour ago
    Rainbow/Blue/Purple NeoPixel Code v0.03
    Arduino | 1 hour ago
    My Log File
    HTML 5 | 2 hours ago
    Minecraft CC Reload the Build Reload

    ---
    ■ Synchronet ■ sbbs.dynu.net 2025
  • From Digital Man@VERT to plt on Sat Nov 21 22:57:26 2020
    Re: Syncterm is not compiling in linux
    By: plt to All on Sun Nov 22 2020 01:37 am

    The folkes in the #debian channel told me the issue with syncterm is failing to be compiled is a lib file is missing in the /sbbs/repo/src/syncterm directory.

    The correct place to report problems with SyncTERM is https://sourceforge.net/p/syncterm/tickets/
    --
    digital man

    This Is Spinal Tap quote #6:
    David St. Hubbins: He was the patron saint of quality footwear.
    Norco, CA WX: 63.6°F, 37.0% humidity, 0 mph SW wind, 0.00 inches rain/24hrs
    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net