🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

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
#151
Author: Olivier L'Heureux
Date: Fri, 27 Oct 1995 10:40
235 lines
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