Thread View: comp.lang.c++.leda
1 messages
1 total messages
Started by Olivier L'Heureux
Fri, 27 Oct 1995 10:40
LEDA-3.2.3 on Solaris 2.4
Author: Olivier L'Heureux
Date: Fri, 27 Oct 1995 10:40
Date: Fri, 27 Oct 1995 10:40
235 lines
9780 bytes
9780 bytes
--Multipart Fri Oct 27 11:40:54 1995
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit
Hello,
I loaded "LEDA-R-3.2.3" library, and I compiled it. I noted all the
potential problems and reported them here. It may help other users.
I compiled LEDA on a Sun SPARCstation 20.
The operating system was Solaris 2.4 (SunOS 5.4) with patch 101945-13.
The compiler used was gcc version 2.7.0.
By the way, I succeeded to compile LEDA as shared library, it is
not so difficult. Without the sharing libraries, compiling all the
programmes with `-g -O' requires more than 100 MB ! More in another
post.
Olivier L'Heureux
----------------------------------------------------------------------
Laboratoire de microélectronique de l'Université catholique de Louvain
e-mail: lheureux@dice.ucl.ac.be B-1348 Louvain-la-Neuve
<URL:http://www.dice.ucl.ac.be/~lheureux> Belgium
MIME/PGP accepted
--------------------------
1) Compilation of the libraries: OK !
Only one problem happened. I compiled the library with both options
"-g" (debugging) and "-O" (optimisation). (Yes, I had to change the
Makefile ! ). "_mw_mat1.c" and "_mw_mat2.c" do not support both
options; I had to compile them without "-g". It is propably an
overflow in gcc-2.7.0, the generated assembly source is more than 2
MB !
-------------
../../c++ -I../../incl -g -O -DLEDA_CHECKING_OFF -c _mw_mat1.c
cc1plus: /var/tmp/cca001DQ.s: I/O error
make[2]: [_mw_mat1.o] Error 1 (ignored)
../../c++ -I../../incl -g -O -DLEDA_CHECKING_OFF -c _mw_mat2.c
cc1plus: /var/tmp/cca001DT.s: I/O error
make[2]: [_mw_mat2.o] Error 1 (ignored)
-------------
To compile with more than one option, insert lines like these in
LEDA-3.2.3/makefile:
-------------
lib_gO:
cd src; $(MAKE) -i FLAGS="\"-g -O\""
pro_gO:
cd prog; $(MAKE) -i FLAGS="\"-g -O\""
-------------
2) Compilation of the programmes:
2.1) The `prog/graph/short' programme calls an algorithm
"STATIC_DIJKSTA" wich does not exist, compilation crashes.
2.2) The `prog/graph/shorttest' programme #includes <LEDA/node_slist.h>,
which does not exist, compilation crashes.
2.3) The programmes linked with `-lX11' needs to be linked with
`-lsocket' on Solaris 2.x. Here is a typical error message:
-------------
../../c++ -g -O -o bin_tree bin_tree.o ../../libP.a ../../libG.a ../../libL.a ../../libWx.a -lX11 -lm
Undefined first referenced
symbol in file
socket /usr/X11R5/lib/libX11.so
xdrmem_create /usr/X11R5/lib/libX11.so
gethostbyname /usr/X11R5/lib/libX11.so
setsockopt /usr/X11R5/lib/libX11.so
authdes_create /usr/X11R5/lib/libX11.so
inet_addr /usr/X11R5/lib/libX11.so
connect /usr/X11R5/lib/libX11.so
ld: fatal: Symbol referencing errors. No output written to bin_tree
make[2]: [bin_tree] Error 1 (ignored)
-------------
The Makefiles in the directories "prog/windows" and
"prog/demo" should be updated with the following patch:
--Multipart Fri Oct 27 11:40:54 1995
Content-Type: text/plain; charset=US-ASCII
*** Makefile Tue Oct 24 12:04:19 1995
--- Makefile.orig Fri Sep 15 15:43:10 1995
***************
*** 1,5 ****
! UNIXLIB = -L../.. -lP -lG -lL -lWx -lX11 -lm -lsocket
DOSLIB = ..\\..\\libp.lib ..\\..\\libg.lib ..\\..\\libl.lib ..\\..\\libwx.lib
--- 1,5 ----
! UNIXLIB = ../../libP.a ../../libG.a ../../libL.a ../../libWx.a -lX11 -lm
DOSLIB = ..\\..\\libp.lib ..\\..\\libg.lib ..\\..\\libl.lib ..\\..\\libwx.lib
--Multipart Fri Oct 27 11:40:54 1995
Content-Type: text/plain; charset=US-ASCII
2.4) The programmes `prog/seeep/test.c' and `prog/seeep/demo.c' does
not compile.
-------------
../../c++ -I../../incl -g -O -c test.c
test.c: In function `int main()':
test.c:61: no matching function for call to `point::point (integer, integer, integer)'
../../incl/LEDA/point.h:66: candidates are: point::point()
../../incl/LEDA/point.h:70: point::point(double, double)
../../incl/LEDA/point.h:74: point::point(vector)
../../incl/LEDA/point.h:78: point::point(const point &)
test.c:61: no matching function for call to `point::point (integer, integer, integer)'
../../incl/LEDA/point.h:66: candidates are: point::point()
../../incl/LEDA/point.h:70: point::point(double, double)
../../incl/LEDA/point.h:74: point::point(vector)
../../incl/LEDA/point.h:78: point::point(const point &)
test.c:61: in base initialization for class `segment'
test.c:68: `cmp_count' is not a member of type `point'
test.c:68: `exact_cmp_count' is not a member of type `point'
test.c:68: `exact_cmp_count' is not a member of type `point'
test.c:68: `cmp_count' is not a member of type `point'
test.c:70: `cmp_count' is not a member of type `point'
test.c:70: `exact_cmp_count' is not a member of type `point'
test.c:70: `exact_cmp_count' is not a member of type `point'
test.c:70: `cmp_count' is not a member of type `point'
test.c:71: `use_filter' is not a member of type `point'
test.c:72: `use_filter' is not a member of type `segment'
test.c:73: `cmp_count' is not a member of type `point'
test.c:73: `exact_cmp_count' is not a member of type `point'
test.c:73: `exact_cmp_count' is not a member of type `point'
test.c:73: `cmp_count' is not a member of type `point'
make: [test.o] Error 1 (ignored)
-------------
../../c++ -I../../incl -g -O -c demo.c
demo.c:3: LEDA/rat_point1.h: No such file or directory
demo.c:4: LEDA/rat_segment1.h: No such file or directory
make: [demo.o] Error 1 (ignored)
-------------
3) Documentation:
3.1) The documentation may not be extracted without `gawk', because
the awk scripts seems non-standard.
The following patch for LEDA-3.2.3/man/extman.awk permits to
use `nawk' instead. Put a symbolic link "LEDA-3.2.3/man/Awk"
toward either `gawk' if you have it or `nawk'.
--Multipart Fri Oct 27 11:40:54 1995
Content-Type: text/plain; charset=US-ASCII
*** extman.awk Wed Feb 1 15:09:53 1995
--- extman.awk.orig Wed Feb 1 12:13:13 1995
***************
*** 1,5 ****
! # BEGIN { datatype = "?????????????"; }
! BEGIN { datatype = "............."; }
function removeweb()
{ x = 0;
--- 1,4 ----
! BEGIN { datatype = "?????????????"; }
function removeweb()
{ x = 0;
***************
*** 54,61 ****
/\/\*{\\Mbinopfunc/ {
split(memberfunc,arr);
if (arr[2] !~ /[a-z,A-Z]+.*/) # binary operator
! {
! sub(/arr[2]/,"",memberfunc);
sub(/\(/,"",memberfunc);
sub(/\)/,"",memberfunc);
sub(/\,/,"\\ "arr[2],memberfunc);
--- 53,59 ----
/\/\*{\\Mbinopfunc/ {
split(memberfunc,arr);
if (arr[2] !~ /[a-z,A-Z]+.*/) # binary operator
! { sub(arr[2],"",memberfunc);
sub(/\(/,"",memberfunc);
sub(/\)/,"",memberfunc);
sub(/\,/,"\\ "arr[2],memberfunc);
*** tman Mon Oct 16 17:42:02 1995
--- tman.orig Fri Sep 15 15:43:14 1995
***************
*** 56,63 ****
echo "" >> $tmpfile.tex
echo "\begin{document}" >> $tmpfile.tex
echo "\chapter{ }" >> $tmpfile.tex
! # gawk -f $MAN/extman.awk $INCL/$1.h >> $tmpfile.tex
! $MAN/Awk -f $MAN/extman.awk $INCL/$1.h >> $tmpfile.tex
echo "\end{document}" >> $tmpfile.tex
--- 56,62 ----
echo "" >> $tmpfile.tex
echo "\begin{document}" >> $tmpfile.tex
echo "\chapter{ }" >> $tmpfile.tex
! gawk -f $MAN/extman.awk $INCL/$1.h >> $tmpfile.tex
echo "\end{document}" >> $tmpfile.tex
--Multipart Fri Oct 27 11:40:54 1995
Content-Type: text/plain; charset=US-ASCII
3.2) Adding a "SHELL= /bin/csh" line on top of "man/Makefile" may help.
3.3) LaTeX errors :
\abs : Undefined control sequence (extract/graph.tex, l.9,
l.10, l.45, l.50)
Missing $ inserted. (extract/node_list.tex l.1)
Solutions :
Put a line "\def\abs {|}" in MANUAL.mac.
Replace "node\\_list" by "node\_list" on line 1 of
man/extract/node_list.tex.
Replace "graph\\_misc" by "graph\_misc" on line 1 of
man/extract/graph_misc.tex.
It should probably be better to update the original .h files.
4) Programmes:
4.1) `hash_dic' crashes with "Segmentation fault".
4.2) `bin_tree' crashes with "Segmentation fault".
4.3) `embedding' gives a message
"ERROR(2): sorry: can only embed bidirected graphs."
with the default settings (random input = on, # segments = 40,
node width = 12, edge width = 1)
4.4) `hilbert' stops with "Segmentation fault".
--Multipart Fri Oct 27 11:40:54 1995--
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads