Menu

error: invalid SORT filename

2024-12-06
2024-12-21
  • Randall Nagy

    Randall Nagy - 2024-12-06

    The file exists, has been read, but is unable to be sorted hereby.

    Any ideas? (& thanks!)

    *> Mission: EXTERNAL FILE SORTING.
    *> Demonstrate "FILE CHAR SORT" (EXTERNAL)
    *> cobc -x -j -free EX_SORT_FILE_CHARS2.cob
    *> STATUS: error: invalid SORT filename 
    
    IDENTIFICATION DIVISION. 
    PROGRAM-ID. EX_SORT_FILE_CHARS2.
    
    ENVIRONMENT DIVISION.
    INPUT-OUTPUT SECTION.
    FILE-CONTROL.
    
    *> THE-CHARS.SDF = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ\n'
    *> od -a THE-CHARS.SDF
    *> 0000000   A   B   C   D   E   F   G   H   I   J   K   L   M   N   O   P
    *> 0000020   Q   R   S   T   U   V   W   X   Y   Z  nl
    *> 0000033
    
    SELECT COBOL-FILE
        ASSIGN TO 'THE-CHARS.SDF'
        FILE STATUS IS FS-COBOL.
    
    *> SORTING.TMP = Not Created
    
    SELECT SORT-FILE
        ASSIGN TO 'SORTING.TMP'
        FILE STATUS IS FS-TMP.
    
    *> SORTED.SDF = Not Created
    
    SELECT SORTED-FILE
        ASSIGN TO 'SORTED.SDF'
        FILE STATUS IS FS-SORTED.
    
    DATA DIVISION.
    FILE SECTION.
    FD COBOL-FILE
    RECORD CONTAINS 1 CHARACTERS
    DATA RECORD IS Z-BUFFER.
    01 Z-BUFFER.
        05 CHAR-ONE         PIC X.
    
    FD SORT-FILE
    RECORD CONTAINS 1 CHARACTERS
    DATA RECORD IS BUFFER2.
    01 BUFFER2.
        05 CHAR2             PIC X.
    
    FD SORTED-FILE
    RECORD CONTAINS 1 CHARACTERS
    DATA RECORD IS BUFFER3.
    01 BUFFER3.
        05 CHAR3             PIC X.
    
    WORKING-STORAGE SECTION.
    01 FS-COBOL     PIC 99.
    01 FS-SORTED    PIC 99.
    01 FS-TMP       PIC 99.
    
    PROCEDURE DIVISION.
        DISPLAY 'Begin.'
        SORT SORT-FILE DESCENDING KEY CHAR2
        USING COBOL-FILE
        GIVING SORTED-FILE.
        DISPLAY 'Done: ' FS-COBOL.
    
    STOP RUN.
    
     

    Last edit: Simon Sobisch 2024-12-06
  • Mickey White

    Mickey White - 2024-12-06

    try changing:
    SELECT SORT-FILE
    ASSIGN TO 'SORTING.TMP'
    FILE STATUS IS FS-TMP.
    change to: select sort-file assign to dummy.

    And change the FD for the sort-file to an SD.

     
    👍
    2
  • Randall Nagy

    Randall Nagy - 2024-12-06

    Works well now - thank you!

    p.s. Any idea what is meant by either / any:

    "<command-line>: warning: "_FORTIFY_SOURCE" redefined
    <command-line>: note: this is the location of the previous definition"</command-line></command-line>

    ?

     
    • Mickey White

      Mickey White - 2024-12-06

      Well without the context I can't say. The Redefined error is just a warning, it could be redefining something with a different record length. The other may have something to do with it or something completely different. Good Luck!

       
      👍
      1
    • Simon Sobisch

      Simon Sobisch - 2024-12-06

      That is a warning message by the C preprocessor.

      How did you install GnuCOBOL - and what is the output of cobc -xv -free EX_SORT_FILE_CHARS2.cob?

       
      👍
      1

      Last edit: Simon Sobisch 2024-12-06
  • Randall Nagy

    Randall Nagy - 2024-12-06

    Installed:

    sudo apt-get install gcc make perl
    sudo apt-get install gnucobol3

    Diag:

    cobc -xv -free EX_SORT_FILE_CHARS2.cob
    cobc (GnuCOBOL) 3.1.2.0
    Built Apr 14 2024 07:59:15 Packaged Dec 23 2020 12:04:58 UTC
    C version "13.2.0"
    loading standard configuration file 'default.conf'
    command line: cobc -xv -free EX_SORT_FILE_CHARS2.cob
    preprocessing: EX_SORT_FILE_CHARS2.cob -> /tmp/cob3250_0.cob
    return status: 0
    parsing: /tmp/cob3250_0.cob (EX_SORT_FILE_CHARS2.cob)
    return status: 0
    translating: /tmp/cob3250_0.cob -> /tmp/cob3250_0.c (EX_SORT_FILE_CHARS2.cob)
    executing: gcc -c -finline-functions -D_FORTIFY_SOURCE=2 -ggdb3 -pipe
    -Wdate-time -D_FORTIFY_SOURCE=3 -Wno-unused -fsigned-char
    -Wno-pointer-sign -o "/tmp/cob3250_0.o" "/tmp/cob3250_0.c"
    <command-line>: warning: "_FORTIFY_SOURCE" redefined
    <command-line>: note: this is the location of the previous definition
    return status: 0
    executing: gcc -Wl,--export-dynamic -o "EX_SORT_FILE_CHARS2"
    "/tmp/cob3250_0.o" -Wl,-Bsymbolic-functions -flto=auto
    -ffat-lto-objects -Wl,-z,relro -L/usr/lib/x86_64-linux-gnu
    -lcob -lm
    return status: 0</command-line></command-line>

     
  • Randall Nagy

    Randall Nagy - 2024-12-21

    Using an older Ubuntu VM I archived awhile back solved the problem:

    /media/sf_d_drive/cob$ cobc -xv -free EX_SORT_FILE_CHARS2.cob
    cobc (GnuCOBOL) 2.2.0
    Built Jul 17 2018 20:29:40 Packaged Sep 06 2017 18:48:43 UTC
    C version "8.1.0"
    loading standard configuration file 'default.conf'
    command line: cobc -xv -free EX_SORT_FILE_CHARS2.cob
    preprocessing: EX_SORT_FILE_CHARS2.cob -> /tmp/cob2107_0.cob
    return status: 0
    parsing: /tmp/cob2107_0.cob (EX_SORT_FILE_CHARS2.cob)
    return status: 0
    translating: /tmp/cob2107_0.cob -> /tmp/cob2107_0.c (EX_SORT_FILE_CHARS2.cob)
    executing: gcc -c -Wno-unused -fsigned-char -Wno-pointer-sign -Wdate-time
    -finline-functions -U_FORTIFY_SOURCE -pipe -o
    "/tmp/cob2107_0.o" "/tmp/cob2107_0.c"
    return status: 0
    executing: gcc -Wl,--export-dynamic -o "EX_SORT_FILE_CHARS2"
    "/tmp/cob2107_0.o" -Wl,-Bsymbolic-functions -Wl,-z,relro
    -Wl,-Bsymbolic-functions -Wl,-z,relro
    -L/usr/lib/x86_64-linux-gnu -lcob -lm -lgmp -lncursesw
    -ldb-5.3 -ldl
    return status: 0
    /media/sf_d_drive/cob$

     

    Last edit: Randall Nagy 2024-12-21

Anonymous
Anonymous

Add attachments
Cancel





Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.