compile error in linux

For developers writing C++, Fortran, Java, code who have questions or comments to make.

Moderators: silvia, selimgunay, Moderators

Post Reply
arbarbosa
Posts: 112
Joined: Tue Sep 07, 2004 1:48 am
Location: Oregon State University
Contact:

compile error in linux

Post by arbarbosa » Wed Dec 07, 2005 12:18 am

Hi

I just downloaded the stable.tar.gz and when I try to compile it under linux (suse 9.3) I get these errors. Can you help me?

Andre

TclDatabaseCommands.cpp: In function `int TclAddDatabase(void*, Tcl_Interp*,
int, char**, Domain&, FEM_ObjectBroker&)':
TclDatabaseCommands.cpp:91: error: invalid conversion from `int (*)(void*,
Tcl_Interp*, int, char**)' to `int (*)(void*, Tcl_Interp*, int, const
char**)'
TclDatabaseCommands.cpp:93: error: invalid conversion from `int (*)(void*,
Tcl_Interp*, int, char**)' to `int (*)(void*, Tcl_Interp*, int, const
char**)'
make[2]: *** [TclDatabaseCommands.o] Error 1
make[1]: *** [all] Error 2
Makefile.lib:18: warning: overriding commands for target `.c.o'
../../Makefile.def:285: warning: ignoring old commands for target `.c.o'
commands.cpp: In function `int g3AppInit(Tcl_Interp*)':
commands.cpp:302: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:304: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:306: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:308: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:310: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:312: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:314: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:316: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:318: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:320: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:322: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:324: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:326: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:328: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:330: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:332: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:334: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:336: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:338: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:340: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:342: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:344: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:346: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:348: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:350: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:352: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:354: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:356: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:358: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:360: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:362: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:364: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:366: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:370: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:372: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:376: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:378: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:380: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:382: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp:384: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
commands.cpp: In function `int specifySOE(void*, Tcl_Interp*, int, char**)':
commands.cpp:1454: warning: unused variable `double thresh'
commands.cpp:1513: warning: unused variable `int result'
commands.cpp:1541: warning: unused variable `int result'
make[1]: *** [commands.o] Error 1
myCommands.cpp: In function `int myCommands(Tcl_Interp*)':
myCommands.cpp:57: error: invalid conversion from `int (*)(void*, Tcl_Interp*,
int, char**)' to `int (*)(void*, Tcl_Interp*, int, const char**)'
make[1]: *** [myCommands.o] Error 1
make: *** [all] Error 2
André

fmk
Site Admin
Posts: 5883
Joined: Fri Jun 11, 2004 2:33 pm
Location: UC Berkeley
Contact:

Post by fmk » Wed Dec 07, 2005 6:49 pm

yes .. you need a -D_TCL84 in the c++ flags .. you are using the latest tcl/tk version >8.4 ..
the Makefile.def that you copied was built when tcl version was < .. they decided to change their api between releases.

arbarbosa
Posts: 112
Joined: Tue Sep 07, 2004 1:48 am
Location: Oregon State University
Contact:

Post by arbarbosa » Thu Dec 08, 2005 10:57 am

Thanks. So far so good.
André

arbarbosa
Posts: 112
Joined: Tue Sep 07, 2004 1:48 am
Location: Oregon State University
Contact:

Post by arbarbosa » Thu Dec 08, 2005 1:45 pm

Hi again... I have one other problem

First, I don't have the libGL.a but have the libGL.so... do you know if it works?

Then I now get a big output of errors, which I am only sending the end.
I suspect is related to the graphics library.


/usr/include/tkDecls.h:1167: error: type specifier omitted for parameter `
Pixmap'
/usr/include/tkDecls.h:1167: error: syntax error before `)' token
/usr/include/tkDecls.h:1179: error: `Display' was not declared in this scope
/usr/include/tkDecls.h:1179: error: `display' was not declared in this scope
/usr/include/tkDecls.h:1179: error: syntax error before `)' token
/usr/include/tkDecls.h:1195: error: type specifier omitted for parameter `
Drawable'
/usr/include/tkDecls.h:1195: error: syntax error before `,' token
make[1]: *** [myCommands.o] Error 1
make[1]: Leaving directory `/home/andre/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2
André

Post Reply