You are here

sqlite3.c errors

7 posts / 0 new
Last post
sqlite3.c errors
#1

I've been trying for a while to build Rosetta on a cluster.

I'm getting errors related to sqlite3.c. Does anyone know how to fix this?

external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
 };
 ^
external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
external/dbio/sqlite3/sqlite3.c:19305:1: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
external/dbio/sqlite3/sqlite3.c: In function ‘void strftimeFunc(sqlite3_context*, int, sqlite3_value**)’:
external/dbio/sqlite3/sqlite3.c:19738:40: error: invalid conversion from ‘void*’ to ‘char*’ [-fpermissive]
     z = sqlite3DbMallocRawNN(db, (int)n);

 

Category: 
Post Situation: 
Tue, 2019-03-05 14:13
lah435

Which compiler are you using?  And what compilation command did you use?

Tue, 2019-03-05 17:00
vmulligan

The compiler command is: 

external/scons-local/scons.py bin mode=release extras=mpi -j8

The compilers are:

[ Dalma compute-60-3 ~/apps/Rosetta/main/source ]
$ which mpiCC
/share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/bin/mpiCC

[ Dalma compute-60-3 ~/apps/Rosetta/main/source ]
$ which mpicxx
/share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/bin/mpicxx

site.settings:

import os
settings = {
    "site" : {
            "prepends" : {
            "program_path" : os.environ["PATH"].split(":"),
#            "include_path" : os.environ["INCLUDE"].split(":"),
            "library_path" : os.environ["LD_LIBRARY_PATH"].split(":"),
        },
        "appends" : {
        },
        "overrides" : {
        },
        "removes" : {
        },
    },
}

user.settings:

import os
settings = {
    "user" : {
        "prepends" : {
        },
        "appends" : {
            #"program_path"  : os.environ["PATH"].split(":"),
            #"defines" : [ 'EXPERIMENTAL_TRACER_FEATURES' ],
        },
        "overrides" : {
            "ENV" : os.environ,
            "cc" : "/share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/bin/mpiCC",
            "cxx" : "/share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/bin/mpicxx",
        },
        "removes" : {
        },
    }
}

Wed, 2019-03-06 11:11
lah435

Am I the only Rosetta user to run into this problem?

Sat, 2019-03-16 14:23
lah435

I think this is related to your compiler defintions in user.settings.

I think mpiCC (with the two capitol Cs) is a C++ compiler, which is a bit more persnickity about conversion issues than a plain C compiler wouid be. The "cc" variable in the *.settings files should be the plain C compiler, which is likely something like "mpicc" (lower case cs).

If that doesn't work, consult your MPI compiler documentation and make sure that the "cc" variable is set to the plain C (not C++) compiler. (The "cxx" variable should be the C++ compiler.)

 

Fri, 2019-03-29 08:45
rmoretti

Changing mpiCC to mpicc in user.settings did the trick!

What's strange is that in /share/apps/NYUAD/openmpi/gcc_4.9.3/1.10.2/bin both mpiCC and mpicc are both symlinked to a file called "opal_wrapper". But it works. 

Thanks Rocco!

 

 

Tue, 2019-04-02 11:41
lah435

There are some programs in Unix which do introspection on how they're called, and change behavior based on the name used on the command line. This is somewhat common for cases where there are two different programs which can be implemented as effectively the same program, just with different options. (e.g. a plain C and a C++ compiler) You can just write one program, and then do introspection on the command name to flip the different options appropriately, rather than writing two programs. I'm guessing that's the case here.

Wed, 2019-04-03 09:00
rmoretti