Dgate compilation on latest Fedora 34 x64 environment

  • Hello Marcel,


    i'm trying to do my first worklist test lab and right now i have some challenge with compilation the newest sources (https://github.com/marcelvanherk/Conquest-DICOM-Server) on fresh/updated system. Fedora 34 (kernel 5.12) with gcc v11.11.1, lua 5.4.3 (and additional 5.1 installed). While running maklinux script, after I choose to install any DB type (finaly i'd like to use mariadb) i get error like below:


    <code>

    /usr/bin/install -c rdjpgcom /usr/local/bin/rdjpgcom

    /usr/bin/install -c wrjpgcom /usr/local/bin/wrjpgcom

    /usr/bin/install -c -m 644 ./cjpeg.1 /usr/local/man/man1/cjpeg.1

    /usr/bin/install: cannot create regular file '/usr/local/man/man1/cjpeg.1': No such file or directory

    make: *** [Makefile:205: install] Error 1

    Please ignore the errors above

    Please choose DB type

    1) mariadb

    2) postgres

    3) sqlite

    4) dbase

    5) precompiled

    6) Quit

    #? 3

    In file included from ./src/dgate/src/total.cpp:175:

    ./src/dgate/src/dgate.cpp: In function ‘void parseHL7(char**, char*, char*, char*, char*, char*, char*)’:

    ./src/dgate/src/dgate.cpp:26659:33: error: ordered comparison of pointer with integer zero (‘char*’ and ‘int’)

    26659 | else if (strstr(type, ".DATE")>0) // date was returned, now get time

    | ~~~~~~~~~~~~~~~~~~~~~^~

    cp: cannot stat './dgate': No such file or directory

    cp: cannot stat './dgate': No such file or directory

    cp: cannot stat './dgate': No such file or directory

    cp: cannot stat './dgate': No such file or directory

    Regenerate the database?n

    n

    Install as service?n

    n

    [root@worklist temp]#

    </code>


    I've checked in /src/dgate/src/dgate.cpp:26659:33 so this is in fact parseHL7 function, but rather have no clue where the error cause is.

  • I've double checked that in 1.5.0.a version which i compiled with success nearly year ago, has much smaller dgate.cpp file but the parseHL7 function is the same. Marcel, do you think the reason of error could be too fresh gcc and rest of libraries in Fedora 34?

  • Yes think so, the new gcc is a bit more strict.


    I think the line should actually read strstr(type, ".DATE")>type. Can you change and see if it compiles then? You will not use this function so as soon as it compiles it is OK.


    Marcel

  • As You proposed, changing to 'type' makes compilation further. But if I want for example to read files for worklist generation, parseHL7 function doesn't' affect such scenario?

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!