below is what my tcl install looks like (it gets installed in /usr/lib and /usr/include)
You could make sure that it is installed there and that the permissions look ok.
More hints
try
make libs
does that run successfully to completion? If so it is definately a linking error.
alisanee@cole:/usr/lib$ ls -al *tcl8.4*
-rw-r--r-- 1 root root 1500474 2009-11-06 07:17 libtcl8.4.a
lrwxrwxrwx 1 root root 14 2011-04-18 13:45 libtcl8.4.so -> libtcl8.4.so.0
-rw-r--r-- 1 root root 809456 2009-11-06 07:17 libtcl8.4.so.0
alisanee@cole:/usr/include$ ls -al *tcl8.4*
total 444
drwxr-xr-x 4 root root 4096 2011-04-18 13:45 .
drwxr-xr-x 87 root root 16384 2011-04-22 12:32 ..
-rw-r--r-- 1 root root 165478 2009-11-06 07:16 tclDecls.h
-rw-r--r-- 1 root root 85077 2009-11-06 07:16 tcl.h
-rw-r--r-- 1 root root 6266 2009-11-06 07:16 tclPlatDecls.h
drwxr-xr-x 5 root root 4096 2011-04-18 13:45 tcl-private
-rw-r--r-- 1 root root 90179 2009-11-06 07:34 tkDecls.h
-rw-r--r-- 1 root root 56805 2009-11-06 07:34 tk.h
-rw-r--r-- 1 root root 10202 2009-11-06 07:34 tkPlatDecls.h
drwxr-xr-x 5 root root 4096 2011-04-18 13:45 tk-private
Help - Problem compiling OpenSees 2.2.2 in Ubuntu 10.04 LTS
Moderators: silvia, selimgunay, Moderators
Re: Help - Problem compiling OpenSees 2.2.2 in Ubuntu 10.04
Hi,
to test, try running
make libs
If that is unsuccessful then you are still not able to access the tcl header files.
Here's where mine are found:
alisanee@cole:/usr/include$ ls *tcl8.4*
tclDecls.h tclPlatDecls.h tkDecls.h tkPlatDecls.h
tcl.h tcl-private tk.h tk-private
If you can successfully run
make libs
but not
make
it means that you are not able to access the tcl libraries.
Here's my Makefile.def path declaration:
TCL_LIBRARY = /usr/lib/libtcl8.4.a
and the contents of /usr/lib
alisanee@cole:/usr/lib$ ls *tcl8.4*
libtcl8.4.a libtcl8.4.so libtcl8.4.so.0
tcl8.4:
tclConfig.sh
hope this helps!
to test, try running
make libs
If that is unsuccessful then you are still not able to access the tcl header files.
Here's where mine are found:
alisanee@cole:/usr/include$ ls *tcl8.4*
tclDecls.h tclPlatDecls.h tkDecls.h tkPlatDecls.h
tcl.h tcl-private tk.h tk-private
If you can successfully run
make libs
but not
make
it means that you are not able to access the tcl libraries.
Here's my Makefile.def path declaration:
TCL_LIBRARY = /usr/lib/libtcl8.4.a
and the contents of /usr/lib
alisanee@cole:/usr/lib$ ls *tcl8.4*
libtcl8.4.a libtcl8.4.so libtcl8.4.so.0
tcl8.4:
tclConfig.sh
hope this helps!
Re: Help - Problem compiling OpenSees 2.2.2 in Ubuntu 10.04
Thanks a lot for your reply ..... I found tcl.h to be in
/usr/include/tcl8.4
so I changed the TCL_INCLUDES to:
TCL_INCLUDES = -I/usr/local/tcl/include -I/usr/local/tk/include -I/usr/liblibtcl8.4.a -I/usr/include/tcl8.4
and Hurah .... A different error
After a good deal of compile time, a couple of warnings appear then the process terminates with the message:
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_Package(void*, Tcl_Interp*, int, const char**)’:
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp warning: unused variable ‘result’
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp warning: unused variable ‘funcName’
commands.cpp: In function ‘int OPS_SourceCmd(void*, Tcl_Interp*, int, Tcl_Obj* const*)’:
commands.cpp:924: error: ‘Tcl_FSEvalFileEx’ was not declared in this scope
commands.cpp: In function ‘int sensitivityAlgorithm(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:998: warning: unused variable ‘withRespectToRVs’
commands.cpp: In function ‘int specifySOE(void*, Tcl_Interp*, int, const char**)’:
commands.cpp warning: unused variable ‘result’
commands.cpp: In function ‘int specifyIntegrator(void*, Tcl_Interp*, int, const char**)’:
commands.cpp warning: deprecated conversion from string constant to ‘char*’
commands.cpp warning: deprecated conversion from string constant to ‘char*’
commands.cpp:4945: warning: unused variable ‘result’
commands.cpp: In function ‘int eigenAnalysis(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5380: warning: unused variable ‘npRow’
commands.cpp:5381: warning: unused variable ‘npCol’
commands.cpp: In function ‘int removeObject(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5696: warning: unused variable ‘nodTag’
commands.cpp: In function ‘int sensNodeDisp(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6367: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeVel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6416: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeAccel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6465: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensSectionForce(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6514: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6571: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionForce(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6595: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6639: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionDeformation(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6663: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6707: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: At global scope:
commands.cpp warning: ‘theExternalAlgorithmCommands’ defined but not used
make[2]: *** [commands.o] Error 1
make[2]: Leaving directory `/home/numubuntu/OpenSees/SRC/tcl'
make[1]: *** [tk] Error 2
make[1]: Leaving directory `/home/numubuntu/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2
/usr/include/tcl8.4
so I changed the TCL_INCLUDES to:
TCL_INCLUDES = -I/usr/local/tcl/include -I/usr/local/tk/include -I/usr/liblibtcl8.4.a -I/usr/include/tcl8.4
and Hurah .... A different error
After a good deal of compile time, a couple of warnings appear then the process terminates with the message:
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp: In function ‘int TclCommand_Package(void*, Tcl_Interp*, int, const char**)’:
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp warning: unused variable ‘result’
/home/numubuntu/OpenSees/SRC/modelbuilder/tcl/TclModelBuilder.cpp warning: unused variable ‘funcName’
commands.cpp: In function ‘int OPS_SourceCmd(void*, Tcl_Interp*, int, Tcl_Obj* const*)’:
commands.cpp:924: error: ‘Tcl_FSEvalFileEx’ was not declared in this scope
commands.cpp: In function ‘int sensitivityAlgorithm(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:998: warning: unused variable ‘withRespectToRVs’
commands.cpp: In function ‘int specifySOE(void*, Tcl_Interp*, int, const char**)’:
commands.cpp warning: unused variable ‘result’
commands.cpp: In function ‘int specifyIntegrator(void*, Tcl_Interp*, int, const char**)’:
commands.cpp warning: deprecated conversion from string constant to ‘char*’
commands.cpp warning: deprecated conversion from string constant to ‘char*’
commands.cpp:4945: warning: unused variable ‘result’
commands.cpp: In function ‘int eigenAnalysis(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5380: warning: unused variable ‘npRow’
commands.cpp:5381: warning: unused variable ‘npCol’
commands.cpp: In function ‘int removeObject(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:5696: warning: unused variable ‘nodTag’
commands.cpp: In function ‘int sensNodeDisp(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6367: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeVel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6416: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensNodeAccel(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6465: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sensSectionForce(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6514: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6571: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionForce(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6595: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6639: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: In function ‘int sectionDeformation(void*, Tcl_Interp*, int, const char**)’:
commands.cpp:6663: warning: deprecated conversion from string constant to ‘char*’
commands.cpp:6707: warning: deprecated conversion from string constant to ‘char*’
commands.cpp: At global scope:
commands.cpp warning: ‘theExternalAlgorithmCommands’ defined but not used
make[2]: *** [commands.o] Error 1
make[2]: Leaving directory `/home/numubuntu/OpenSees/SRC/tcl'
make[1]: *** [tk] Error 2
make[1]: Leaving directory `/home/numubuntu/OpenSees/SRC/modelbuilder/tcl'
make: *** [all] Error 2
Hisham El Safti
Re: Help - Problem compiling OpenSees 2.2.2 in Ubuntu 10.04
Dear all,
I managed to edit the Makefile.def and got the same error as in the first post. I managed to successfully build OpenSees by tagging line #94 of the AMDnumberer.cpp as a comment.
I wish to know how to include the AMD library in the DIRS variable (as Prof. ja_abell stated earlier in this post). Because I have:
DIRS = $(BLASdir) $(CBLASdir) $(LAPACKdir) $(AMDdir) \
$(SUPERLUdir) $(ARPACKdir) $(UMFPACKdir) $(SRCdir) $(METISdir)
Or else how is it possible to solve this problem:
/home/jose/lib/libOpenSees.a(AMDNumberer.o): In function `AMD::number(Graph&, int)':
AMDNumberer.cpp:(.text+0x191): undefined reference to `amd_order'
collect2: ld returned 1 exit status
make[1]: *** [tcl] Error 1
make[1]: Leaving directory `/home/jose/OpenSEES/SRC/modelbuilder/tcl'
make: *** [all] Error 2
I would, also, highly appreciate tips on building the parallel version.
Best regards,
Hisham El Safti
I managed to edit the Makefile.def and got the same error as in the first post. I managed to successfully build OpenSees by tagging line #94 of the AMDnumberer.cpp as a comment.
I wish to know how to include the AMD library in the DIRS variable (as Prof. ja_abell stated earlier in this post). Because I have:
DIRS = $(BLASdir) $(CBLASdir) $(LAPACKdir) $(AMDdir) \
$(SUPERLUdir) $(ARPACKdir) $(UMFPACKdir) $(SRCdir) $(METISdir)
Or else how is it possible to solve this problem:
/home/jose/lib/libOpenSees.a(AMDNumberer.o): In function `AMD::number(Graph&, int)':
AMDNumberer.cpp:(.text+0x191): undefined reference to `amd_order'
collect2: ld returned 1 exit status
make[1]: *** [tcl] Error 1
make[1]: Leaving directory `/home/jose/OpenSEES/SRC/modelbuilder/tcl'
make: *** [all] Error 2
I would, also, highly appreciate tips on building the parallel version.
Best regards,
Hisham El Safti
Hisham El Safti