• dpoker make error

    From Dumas Walker@VERT/CAPCITY2 to All on Saturday, November 23, 2019 17:33:22
    I pulled a cvs update for the xtrn directory about an hour ago. I noticed that the dpoker code had been updated so I attempted a make in that directory:

    dpoker.c:1712:29: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
    if (m==j) j++; if (m1==j) j++; if (m2==j) j++;
    ^~
    ../../src/build/Common.gmake:457: recipe for target 'gcc.linux.x64.obj.debug-mt/dpoker.o' failed
    make: *** [gcc.linux.x64.obj.debug-mt/dpoker.o] Error 1

    I think I know what is wrong... /xtrn/dpoker/gcc.linux.x64.obj.debug-mt is an empty directory. the dpoker.o file appears to exist in the obj.release-mt directory. Copying the members from obj.release-mt to obj.debug-mt does not fix the issue. The error remains the same.

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Digital Man@VERT to Dumas Walker on Monday, November 25, 2019 12:23:46
    Re: dpoker make error
    By: Dumas Walker to All on Sat Nov 23 2019 05:33 pm

    I pulled a cvs update for the xtrn directory about an hour ago. I noticed that the dpoker code had been updated so I attempted a make in that directory:

    dpoker.c:1712:29: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the ‘if’
    if (m==j) j++; if (m1==j) j++; if (m2==j) j++;
    ^~

    That's just a warning, safely ignored.

    ../../src/build/Common.gmake:457: recipe for target 'gcc.linux.x64.obj.debug-mt/dpoker.o' failed
    make: *** [gcc.linux.x64.obj.debug-mt/dpoker.o] Error 1

    The actual error message should be further up. In any case, try a "make clean" first.

    I think I know what is wrong... /xtrn/dpoker/gcc.linux.x64.obj.debug-mt is an empty directory. the dpoker.o file appears to exist in the obj.release-mt directory. Copying the members from obj.release-mt to obj.debug-mt does not fix the issue. The error remains the same.

    No, you don't want to be copying debug output files to a release output directory. That could be bad and definitely not a solution.

    digital man

    This Is Spinal Tap quote #27:
    As long as there's, y'know, sex and drugs, I can do without the rock and roll. Norco, CA WX: 67.0øF, 33.0% humidity, 0 mph NNW wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Dumas Walker@VERT/CAPCITY2 to DIGITAL MAN on Tuesday, November 26, 2019 19:43:00
    ../../src/build/Common.gmake:457: recipe for target 'gcc.linux.x64.obj.debug-mt/dpoker.o' failed
    make: *** [gcc.linux.x64.obj.debug-mt/dpoker.o] Error 1
    The actual error message should be further up. In any case, try a "make clean" >irst.

    Would a make clean fix a directory being empty, as per my findings below?
    Or is the .o file something the compile would build if it had worked?

    Sorry, it has been so long since I knew anything about c that I don't
    remember where the .o files come into play. :) Thanks!

    I think I know what is wrong... /xtrn/dpoker/gcc.linux.x64.obj.debug-mt is an empty directory. the dpoker.o file appears to exist in the obj.release-mt directory. Copying the members from obj.release-mt to obj.debug-mt does not fix the issue. The error remains the same.


    * SLMR 2.1a * Remind me again how lucky I am to work here

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Digital Man@VERT to Dumas Walker on Wednesday, November 27, 2019 08:57:23
    Re: dpoker make error
    By: Dumas Walker to DIGITAL MAN on Tue Nov 26 2019 07:43 pm

    ../../src/build/Common.gmake:457: recipe for target 'gcc.linux.x64.obj.debug-mt/dpoker.o' failed
    make: *** [gcc.linux.x64.obj.debug-mt/dpoker.o] Error 1
    The actual error message should be further up. In any case, try a "make clean" >irst.

    Would a make clean fix a directory being empty, as per my findings below?

    Unlikely. A "make clean" will remove files, not add them.

    Or is the .o file something the compile would build if it had worked?

    Yes, when the compile works, it creates .o, .so, .a and exectuables (no extension on *nix).

    digital man

    Synchronet/BBS Terminology Definition #12:
    CBM = Commodore Business Machines
    Norco, CA WX: 53.5øF, 66.0% humidity, 0 mph W wind, 0.00 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Dumas Walker@VERT/CAPCITY2 to Digital Man on Saturday, November 30, 2019 14:16:03
    Unlikely. A "make clean" will remove files, not add them.


    OK so I ran the ./cleanall.sh RELEASE=1
    Then I ran the recompile script that included this:

    export CVSROOT=:pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs
    cvs update -d src 3rdp

    I did not receive any errors recompiling.

    I then changed to the xtrn/dpoker directory and ran:

    make clean
    make

    It looks like something is up with conio:

    make -C ../../src/conio mtlib
    make[1]: Entering directory '/sbbs/src/conio'
    Compiling ansi_cio.c
    Compiling ciolib.c
    make[1]: *** No rule to make target '../smblib/base64.h', needed by 'gcc.linux.x64.obj.debug-mt/cterm.o'. Stop.
    make[1]: Leaving directory '/sbbs/src/conio'
    ../../src/build/Common.gmake:505: recipe for target 'ciolib-mt' failed
    make: *** [ciolib-mt] Error 2

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Digital Man@VERT to Dumas Walker on Saturday, November 30, 2019 18:38:34
    Re: Re: dpoker make error
    By: Dumas Walker to Digital Man on Sat Nov 30 2019 02:16 pm

    Unlikely. A "make clean" will remove files, not add them.


    OK so I ran the ./cleanall.sh RELEASE=1

    Okay, so that would clean all the "release" binaries, but leave any "debug" binaries alone.

    Then I ran the recompile script that included this:

    export CVSROOT=:pserver:anonymous@cvs.synchro.net:/cvsroot/sbbs
    cvs update -d src 3rdp

    I did not receive any errors recompiling.

    I then changed to the xtrn/dpoker directory and ran:

    make clean
    make

    It looks like something is up with conio:

    make -C ../../src/conio mtlib
    make[1]: Entering directory '/sbbs/src/conio'
    Compiling ansi_cio.c
    Compiling ciolib.c
    make[1]: *** No rule to make target '../smblib/base64.h', needed by 'gcc.linux.x64.obj.debug-mt/cterm.o'. Stop.
    make[1]: Leaving directory '/sbbs/src/conio' ../../src/build/Common.gmake:505: recipe for target 'ciolib-mt' failed
    make: *** [ciolib-mt] Error 2

    It appears you just ran "make" here, which is "debug" build by default. And you have an old dependency stored for the old locatino of base64.h. Running "cleanall.sh" without the "RELEASE=1" argument, first, should take care of that.

    digital man

    Synchronet "Real Fact" #103:
    The official Synchronet YouTube channel went live on May 6, 2019
    Norco, CA WX: 51.3øF, 65.0% humidity, 0 mph S wind, 0.01 inches rain/24hrs
    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Dumas Walker@VERT/CAPCITY2 to DIGITAL MAN on Sunday, December 01, 2019 10:23:00
    OK so I ran the ./cleanall.sh RELEASE=1

    Okay, so that would clean all the "release" binaries, but leave any "debug" bin
    ries alone.

    make clean
    make


    It appears you just ran "make" here, which is "debug" build by default. And you
    have an old dependency stored for the old locatino of base64.h. Running "cleana
    l.sh" without the "RELEASE=1" argument, first, should take care of that.

    If I run cleanall.sh again, do I also need to recompile synchronet after
    doing so? When running a make to compile one of the doors, is there
    something I should put on the command line that will make it compile the non-debug version (like RELEASE=1)?

    Thanks!


    * SLMR 2.1a * Basic Flying Rule #1: Keep the pointy end forward.

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP
  • From Digital Man@VERT to Dumas Walker on Sunday, December 01, 2019 11:34:55
    Re: Re: dpoker make error
    By: Dumas Walker to DIGITAL MAN on Sun Dec 01 2019 10:23 am

    OK so I ran the ./cleanall.sh RELEASE=1

    Okay, so that would clean all the "release" binaries, but leave any "debug" bin
    ries alone.

    make clean
    make


    It appears you just ran "make" here, which is "debug" build by default. And you
    have an old dependency stored for the old locatino of base64.h. Running "cleana
    l.sh" without the "RELEASE=1" argument, first, should take care of that.

    If I run cleanall.sh again, do I also need to recompile synchronet after doing so?

    "cleanall.sh" withOUT the RELEASE=1, will remove all the debug binaries. If you're running debug binaries for Synchronet and haven't copied them to your sbbs/exec directory, then yes, you'll need to recompile again.

    If you're running release binaries for Synchronet, then no, you won't need to rebuild anything.

    When running a make to compile one of the doors, is there
    something I should put on the command line that will make it compile the non-debug version (like RELEASE=1)?

    Yes, 'make RELEASE=1' to make a release binary, even for dpoker.

    digital man

    This Is Spinal Tap quote #36:
    Bobbi Flekman: Money talks, and bullshit walks.
    Norco, CA WX: 58.3øF, 50.0% humidity, 0 mph ESE wind, 0.00 inches rain/24hrs ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Dumas Walker@VERT/CAPCITY2 to DIGITAL MAN on Monday, December 02, 2019 18:11:00
    When running a make to compile one of the doors, is there
    something I should put on the command line that will make it compile the non-debug version (like RELEASE=1)?

    Yes, 'make RELEASE=1' to make a release binary, even for dpoker.

    OK that did the trick, thanks! :)


    * SLMR 2.1a * The 4 major food groups: fast, frozen, junk, & spoiled.

    ---
    þ Synchronet þ CAPCITY2 * capcity2.synchro.net * Telnet/SSH:2022/Rlogin/HTTP