[scilab-Users] scilab 5.1.1 compilation under Solaris 10

Langella Raphael raphael.langella at steria.cnes.fr
Thu Aug 20 16:32:00 CEST 2009


> -----Message d'origine-----
> De : irf610 at gmail.com [mailto:irf610 at gmail.com] De la part de 
> Jonathan Blanchard
> Envoyé : jeudi 20 août 2009 16:08
> À : users at lists.scilab.org
> Objet : Re: [scilab-Users] scilab 5.1.1 compilation under Solaris 10
> 
> On Thu, Aug 20, 2009 at 11:03 AM, Langella 
> Raphael<raphael.langella at steria.cnes.fr> wrote:
> >> -----Message d'origine-----
> >> De : Langella Raphael [mailto:raphael.langella at steria.cnes.fr]
> >> Envoyé : jeudi 20 août 2009 09:44
> >> À : users at lists.scilab.org
> >> Objet : RE: [scilab-Users] scilab 5.1.1 compilation under 
> Solaris 10
> >>
> >> > -----Message d'origine-----
> >> > De : irf610 at gmail.com [mailto:irf610 at gmail.com] De la part
> >> de Jonathan
> >> > Blanchard Envoyé : mardi 18 août 2009 18:45 À :
> >> users at lists.scilab.org
> >> > Objet : Re: [scilab-Users] scilab 5.1.1 compilation 
> under Solaris 
> >> > 10
> >> >
> >> > Hi,
> >> >
> >> > Sun Studio 12 won't work and you must use a very recent 
> version of 
> >> > gcc. Preferably 4.3.3 or 4.3.4.
> >> >
> >> > If you get any errors with GCC you can post them here.
> >> >
> >> > Jonathan Blanchard
> >>
> >> OK, so I've tried with gcc 4.3.3 under Solaris 9 (by the way, it's 
> >> Solaris/SPARC). I get this error:
> >>
> >> In file included from src/c/callDynamicGateway.c:16:
> >> src/c/getdynamicdebuginfo.c:28:20: error: getopt.h: No 
> such file or 
> >> directory
> >>
> >> So, I've tried commenting this include and it works (I think those 
> >> functions are defined in unistd.h).
> >> But then I get this error:
> >>
> >> src/c/mput.c:16:21: error: stdint.h: No such file or directory
> >>
> >> So I edited modules/fileio/src/c/mput.c and replaced 
> <stdint.h> with 
> >> <inttypes.h>. I also had to do it with mget.c, mputi.c and mgeti.c.
> >>
> >> Next, I get this error:
> >>
> >> src/c/evaluate_expr.c: In function 'evaluate_expr':
> >> src/c/evaluate_expr.c:517: error: expected expression 
> before 'return'
> >>
> >> isnan and isint aren't defined in math.h under Solaris 9.
> >>
> >> So I edited modules/scicos_blocks/src/c/evaluate_expr.c :
> >> After:
> >> #ifndef max
> >> #define max(a,b) ((a) >= (b) ? (a) : (b)) #endif
> >>
> >> I added:
> >> # define isnan(x) \
> >>       (sizeof (x) == sizeof (long double) ? isnan_ld (x) \
> >>       : sizeof (x) == sizeof (double) ? isnan_d (x) \
> >>       : isnan_f (x))
> >> static inline int isnan_f  (float       x) { return x != 
> x; } static 
> >> inline int isnan_d  (double      x) { return x != x; } 
> static inline 
> >> int isnan_ld (long double x) { return x != x; }
> >>
> >> # define isinf(x) \
> >>       (sizeof (x) == sizeof (long double) ? isinf_ld (x) \
> >>       : sizeof (x) == sizeof (double) ? isinf_d (x) \
> >>       : isinf_f (x))
> >> static inline int isinf_f  (float       x) { return isnan 
> (x - x); } 
> >> static inline int isinf_d  (double      x) { return isnan 
> (x - x); } 
> >> static inline int isinf_ld (long double x) { return isnan 
> (x - x); }
> >>
> >>
> >> The last file (scilab-bin) fails with this error:
> >>
> >> Undefined                       first referenced
> >>  symbol                             in file 
> >> libintl_bind_textdomain_codeset 
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> libintl_gettext
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/graphic_export/.li
> >> bs/libscigraphic_export.so
> >> libintl_textdomain
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> libiconv_close
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> libiconv_open
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> libintl_bindtextdomain
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> libintl_dgettext
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/modules/localization/.libs
> >> /libscilocalization.so
> >> ld: fatal: Symbol referencing errors. No output written to 
> >> .libs/scilab-bin
> >>
> >> The command line is missing -lintl and -liconv. I've added it to 
> >> LDFLAGS, rerun configure and it works.
> >>
> >> Next, I get this error:
> >> ./bin/scilab -ns -nwni -f
> >> modules/functions/scripts/buildmacros/buildmacros.sce
> >> Could not find the Java configuration for the model <sun4u>.
> >> Please contact us.
> >> ld.so.1: scilab-bin: fatal: libjava.so: open failed: No 
> such file or 
> >> directory Killed
> >>
> >> uname -m returns sun4u and not sparc. I've corrected the scilab 
> >> scripts so it recognize sun4u. I've rerun gmake, it works!
> >>
> >> But make install fails:
> >>
> >> /bin/bash: -c: line 1: syntax error near unexpected token `;'
> >> /bin/bash: -c: line 1: `echo "-------- Install macros (if
> >> any) --------";  for dir in macros/  ; do  /bin/bash 
> >> /Produits/tmp/rla/Sol9/scilab-5.1.1/config/install-sh -d 
> >> /Produits/publics/sparc.SunOS.5.9/scilab/5.1.1/share/scilab/mo
> >> dules/blas/$dir &&  if test -d ./$dir/; then 
> FILELIST="./$dir/*.sci 
> >> ./$dir/*.bin ./$dir/*.sce ./$dir/names ./$dir/lib"; for 
> specialExt in 
> >> ; do specialExtDir="$specialExtDir ./$dir/$specialExt";  done; 
> >> FILELIST="$FILELIST $specialExtDir";  for file in `ls -1 $FILELIST 
> >> 2>/dev/null`; do  echo 
> "/Produits/publics/sparc.SunOS.5.9/bin/install 
> >> -c -m 644 $file 
> >> /Produits/publics/sparc.SunOS.5.9/scilab/5.1.1/share/scilab/mo
> >> dules/blas/$dir" ;
> >> /Produits/publics/sparc.SunOS.5.9/bin/install -c -m 644 "$file"
> >> /Produits/publics/sparc.SunOS.5.9/scilab/5.1.1/share/scilab/mo
> >> dules/blas/$dir ;  done;  fi;  done'
> >>
> >> I'm not sure what's wrong here.
> >>
> >> By the way, is Solaris/SPARC a supported plateform?
> >>
> >> Raphaël Langella
> >
> > So, the "make install" failed, but I can start scilab from 
> the build dir. It starts, but when I try to run a demo to 
> test it, nothing appears in the window, and this error is 
> printed many times on the terminal:
> >
> > An error occurred when Scilab tried to open a Canvas: 
> > org.scilab.modules.gui.bridge.canvas.SwingScilabCanvasImpl
> > If an exception about java.lang.UnsatisfiedLinkError has 
> been thrown, 
> > check if etc/librarypath.xml contains the path to gluegen and jogl 
> > libraries
> >
> 
> You need to have the thirdparty folder copied into the source 
> directory of Scilab. You can take it from the linux 
> prerequesites package on the scilan download page. Also you 
> will have to download JOGL and place it in that thirdparty 
> folder and get the libs somewhere the binaries can find them.
> 
> Jonathan Blanchard
> 

OK, thanks. I tried that, but now I get this :

An error occurred when Scilab tried to open a Canvas: glXGetConfig failed: error code GLX_NO_EXTENSION

So I guess it doesn't work with a remote cygwin-xfree display. I'll try tomorrow with Exceed. Also, any idea about the "make install" error with the macros?



More information about the users mailing list