Details
Bug#: 3860
: Scilab software
: Dynamic Link
Status: RESOLVED
Resolution: FIXED
Opened: 2008-12-14 23:08
: PC
: All Linux
: GIT version [5.0 branch]
: P5
: Blocker
Last modified: 2008-12-15 17:06:47

:
Reproductibility: Every Times
:
: 3854
  Show dependency tree - Show dependency graph
People
Reporter: Andrea
Assigned To: Sylvestre LEDRU
Detailed description of the problem
hi, scilab have problems with libs,

first one is bug #3854 even if i fixed it, other problems still exist and i want to report them:


1st) it link to *.so files, that means they are DEVELs not installed bye default and used only to link libraries.

example: fftw3 module need libfftw3.so, but should be linked to libfftw3.so.3

even if i'm not sure, if my patch is enought i think i fixed it... patch attached

2nd) scilab  search libraries where NOT exist, when IT installed in another directory,

example: 

 !--error 999 
Impossible to load libsciscicos.so library: /usr/share/scilab//modules/scicos/.libs/libsciscicos.so: cannot open shared
object file: No such file or directory
at line      19 of function do_load called by :  
line   283 of function scicos called by :  
line    16 of function scicos_demostration called by :  
scicos_demostration(thispath+"/bounce.cosf");
line     9 of exec file called by :    
mo_gui_update();exec(script_path,-1);;if exists("%oldgcbo") then gcbo = %old
while executing a callback


the file does not exist (the hidden directory  /usr/share/scilab//modules/scicos/.libs does not exist) but:

Hp-Linux:/usr/lib/scilab # locate libsciscicos.so
/usr/lib/scilab/libsciscicos.so
/usr/lib/scilab/libsciscicos.so.5
/usr/lib/scilab/libsciscicos.so.5.0.0


the file was installed with "make install" in /usr/lib/scilab (the place is right, but scilab search the lib in a wrong
path

same problem with ALL "libsci*" libraries... scilab search them in 

 /usr/share/scilab//modules/<module-name>/.libs direcotry but all libs are in /usr/lib(64)/scilab or in /usr/lib(64) if
scilab is compiled with shared
                    
Text of the scilab error message
everything is attached
                    
Steps to reproduce the bug
Created an attachment (id=950) [details]
libfftw3 patch

compile scilab from source and lunch some demos
                    
------- Comment #1 From Andrea 2008-12-14 23:10:10 -------
Created an attachment (id=951) [details]
errors displayed into scilab console

i printed to file everything was printed in scilab console...
      
------- Comment #2 From Andrea 2008-12-14 23:18:16 -------
here the list of all files (libraries) available in /usr/lib/scilab, you are now able to check that all lib searched in
attachment are installed in /usr/lib/scilab


/usr/lib/scilab
/usr/lib/scilab/libjavasci.so
/usr/lib/scilab/libjavasci.so.5
/usr/lib/scilab/libjavasci.so.5.0.0
/usr/lib/scilab/libmat.so
/usr/lib/scilab/libmat.so.5
/usr/lib/scilab/libmat.so.5.0.0
/usr/lib/scilab/libmex.so
/usr/lib/scilab/libmex.so.5
/usr/lib/scilab/libmex.so.5.0.0
/usr/lib/scilab/libmx.so
/usr/lib/scilab/libmx.so.5
/usr/lib/scilab/libmx.so.5.0.0
/usr/lib/scilab/libsciaction_binding.so
/usr/lib/scilab/libsciaction_binding.so.5
/usr/lib/scilab/libsciaction_binding.so.5.0.0
/usr/lib/scilab/libsciarnoldi.so
/usr/lib/scilab/libsciarnoldi.so.5
/usr/lib/scilab/libsciarnoldi.so.5.0.0
/usr/lib/scilab/libsciboolean.so
/usr/lib/scilab/libsciboolean.so.5
/usr/lib/scilab/libsciboolean.so.5.0.0
/usr/lib/scilab/libscicacsd.so
/usr/lib/scilab/libscicacsd.so.5
/usr/lib/scilab/libscicacsd.so.5.0.0
/usr/lib/scilab/libscicompletion.so
/usr/lib/scilab/libscicompletion.so.5
/usr/lib/scilab/libscicompletion.so.5.0.0
/usr/lib/scilab/libsciconsole.so
/usr/lib/scilab/libsciconsole.so.5
/usr/lib/scilab/libsciconsole.so.5.0.0
/usr/lib/scilab/libscicore.so
/usr/lib/scilab/libscicore.so.5
/usr/lib/scilab/libscicore.so.5.0.0
/usr/lib/scilab/libscidata_structures.so
/usr/lib/scilab/libscidata_structures.so.5
/usr/lib/scilab/libscidata_structures.so.5.0.0
/usr/lib/scilab/libscidifferential_equations.so
/usr/lib/scilab/libscidifferential_equations.so.5
/usr/lib/scilab/libscidifferential_equations.so.5.0.0
/usr/lib/scilab/libscidouble.so
/usr/lib/scilab/libscidouble.so.5
/usr/lib/scilab/libscidouble.so.5.0.0
/usr/lib/scilab/libscidoublylinkedlist.so
/usr/lib/scilab/libscidoublylinkedlist.so.5
/usr/lib/scilab/libscidoublylinkedlist.so.5.0.0
/usr/lib/scilab/libscidynamic_link.so
/usr/lib/scilab/libscidynamic_link.so.5
/usr/lib/scilab/libscidynamic_link.so.5.0.0
/usr/lib/scilab/libscidynamiclibrary.so
/usr/lib/scilab/libscidynamiclibrary.so.5
/usr/lib/scilab/libscidynamiclibrary.so.5.0.0
/usr/lib/scilab/libscielementary_functions.so
/usr/lib/scilab/libscielementary_functions.so.5
/usr/lib/scilab/libscielementary_functions.so.5.0.0
/usr/lib/scilab/libscifftw.so
/usr/lib/scilab/libscifftw.so.5
/usr/lib/scilab/libscifftw.so.5.0.0
/usr/lib/scilab/libscifileio.so
/usr/lib/scilab/libscifileio.so.5
/usr/lib/scilab/libscifileio.so.5.0.0
/usr/lib/scilab/libscigraphic_export.so
/usr/lib/scilab/libscigraphic_export.so.5
/usr/lib/scilab/libscigraphic_export.so.5.0.0
/usr/lib/scilab/libscigraphics.so
/usr/lib/scilab/libscigraphics.so.5
/usr/lib/scilab/libscigraphics.so.5.0.0
/usr/lib/scilab/libscigui.so
/usr/lib/scilab/libscigui.so.5
/usr/lib/scilab/libscigui.so.5.0.0
/usr/lib/scilab/libscihashtable.so
/usr/lib/scilab/libscihashtable.so.5
/usr/lib/scilab/libscihashtable.so.5.0.0
/usr/lib/scilab/libscihelptools.so
/usr/lib/scilab/libscihelptools.so.5
/usr/lib/scilab/libscihelptools.so.5.0.0
/usr/lib/scilab/libscihistory_manager.so
/usr/lib/scilab/libscihistory_manager.so.5
/usr/lib/scilab/libscihistory_manager.so.5.0.0
/usr/lib/scilab/libsciinteger.so
/usr/lib/scilab/libsciinteger.so.5
/usr/lib/scilab/libsciinteger.so.5.0.0
/usr/lib/scilab/libsciinterpolation.so
/usr/lib/scilab/libsciinterpolation.so.5
/usr/lib/scilab/libsciinterpolation.so.5.0.0
/usr/lib/scilab/libsciintersci.so
/usr/lib/scilab/libsciintersci.so.5
/usr/lib/scilab/libsciintersci.so.5.0.0
/usr/lib/scilab/libsciio.so
/usr/lib/scilab/libsciio.so.5
/usr/lib/scilab/libsciio.so.5.0.0
/usr/lib/scilab/libscijvm.so
/usr/lib/scilab/libscijvm.so.5
/usr/lib/scilab/libscijvm.so.5.0.0
/usr/lib/scilab/libscilab.so
/usr/lib/scilab/libscilab.so.0
/usr/lib/scilab/libscilab.so.0.0.0
/usr/lib/scilab/libscilapack.so
/usr/lib/scilab/libscilapack.so.5
/usr/lib/scilab/libscilapack.so.5.0.0
/usr/lib/scilab/libscilibst.so
/usr/lib/scilab/libscilibst.so.5
/usr/lib/scilab/libscilibst.so.5.0.0
/usr/lib/scilab/libscilinear_algebra.so
/usr/lib/scilab/libscilinear_algebra.so.5
/usr/lib/scilab/libscilinear_algebra.so.5.0.0
/usr/lib/scilab/libscilocalization.so
/usr/lib/scilab/libscilocalization.so.5
/usr/lib/scilab/libscilocalization.so.5.0.0
/usr/lib/scilab/libscimalloc.so
/usr/lib/scilab/libscimalloc.so.5
/usr/lib/scilab/libscimalloc.so.5.0.0
/usr/lib/scilab/libscimatio.so
/usr/lib/scilab/libscimatio.so.0
/usr/lib/scilab/libscimatio.so.0.0.0
/usr/lib/scilab/libscimetanet.so
/usr/lib/scilab/libscimetanet.so.5
/usr/lib/scilab/libscimetanet.so.5.0.0
/usr/lib/scilab/libscioptimization.so
/usr/lib/scilab/libscioptimization.so.5
/usr/lib/scilab/libscioptimization.so.5.0.0
/usr/lib/scilab/libscioutput_stream.so
/usr/lib/scilab/libscioutput_stream.so.5
/usr/lib/scilab/libscioutput_stream.so.5.0.0
/usr/lib/scilab/libscipolynomials.so
/usr/lib/scilab/libscipolynomials.so.5
/usr/lib/scilab/libscipolynomials.so.5.0.0
/usr/lib/scilab/libscipvm.so
/usr/lib/scilab/libscipvm.so.5
/usr/lib/scilab/libscipvm.so.5.0.0
/usr/lib/scilab/libscirandlib.so
/usr/lib/scilab/libscirandlib.so.5
/usr/lib/scilab/libscirandlib.so.5.0.0
/usr/lib/scilab/libscirenderer.so
/usr/lib/scilab/libscirenderer.so.5
/usr/lib/scilab/libscirenderer.so.5.0.0
/usr/lib/scilab/libsciscicos.so
/usr/lib/scilab/libsciscicos.so.5
/usr/lib/scilab/libsciscicos.so.5.0.0
/usr/lib/scilab/libsciscicos_blocks.so
/usr/lib/scilab/libsciscicos_blocks.so.5
/usr/lib/scilab/libsciscicos_blocks.so.5.0.0
/usr/lib/scilab/libscishell.so
/usr/lib/scilab/libscishell.so.5
/usr/lib/scilab/libscishell.so.5.0.0
/usr/lib/scilab/libscisignal_processing.so
/usr/lib/scilab/libscisignal_processing.so.5
/usr/lib/scilab/libscisignal_processing.so.5.0.0
/usr/lib/scilab/libscisound.so
/usr/lib/scilab/libscisound.so.5
/usr/lib/scilab/libscisound.so.5.0.0
/usr/lib/scilab/libscisparse.so
/usr/lib/scilab/libscisparse.so.5
/usr/lib/scilab/libscisparse.so.5.0.0
/usr/lib/scilab/libscispecial_functions.so
/usr/lib/scilab/libscispecial_functions.so.5
/usr/lib/scilab/libscispecial_functions.so.5.0.0
/usr/lib/scilab/libscispreadsheet.so
/usr/lib/scilab/libscispreadsheet.so.5
/usr/lib/scilab/libscispreadsheet.so.5.0.0
/usr/lib/scilab/libscistatistics.so
/usr/lib/scilab/libscistatistics.so.5
/usr/lib/scilab/libscistatistics.so.5.0.0
/usr/lib/scilab/libscistring.so
/usr/lib/scilab/libscistring.so.5
/usr/lib/scilab/libscistring.so.5.0.0
/usr/lib/scilab/libscisundials.so
/usr/lib/scilab/libscisundials.so.0
/usr/lib/scilab/libscisundials.so.0.0.0
/usr/lib/scilab/libscisymbolic.so
/usr/lib/scilab/libscisymbolic.so.5
/usr/lib/scilab/libscisymbolic.so.5.0.0
/usr/lib/scilab/libscitclsci.so
/usr/lib/scilab/libscitclsci.so.5
/usr/lib/scilab/libscitclsci.so.5.0.0
/usr/lib/scilab/libscitime.so
/usr/lib/scilab/libscitime.so.5
/usr/lib/scilab/libscitime.so.5.0.0
/usr/lib/scilab/libsciumfpack.so
/usr/lib/scilab/libsciumfpack.so.5
/usr/lib/scilab/libsciumfpack.so.5.0.0
/usr/lib/scilab/libsciwindows_tools.so
/usr/lib/scilab/libsciwindows_tools.so.5
/usr/lib/scilab/libsciwindows_tools.so.5.0.0
      
------- Comment #3 From Andrea 2008-12-15 12:03:38 -------
any news?

at least, could you please tell me where is definided to search libraries in

 /usr/share/scilab//modules/<module-name>/.libs directory?

thanks
      
------- Comment #4 From Sylvestre LEDRU 2008-12-15 13:50:06 -------
1) Thanks. Commit 673a5d97ced61a87160128a1b903590e0b98a8f9 in the branch 5.0 (will be reported to the master soon)

2) It should not use this directory. I didn't see this bug before. I have a look.
      
------- Comment #5 From Andrea 2008-12-15 14:05:02 -------
maybe my configure may help:

./configure --with-tk-library=%{_libdir} \
        --with-tcl-library=%{_libdir} \
        --with-blas-library=%{_libdir} \
        --with-lapack-library=%{_libdir} \
        --with-jdk=%{java_home} \
        --enable-shared \
        --disable-static \
        --with-gfortran \
        --with-gcc \
        --with-ocaml \
        --with-fftw \
        --enable-build-localization \
        --enable-build-help \
        --with-install-help-xml \
        --with-docbook=/etc/xml/docbook-xsl-stylesheets-1.73.2.xml \
        --enable-build-swig \
        --enable-build-giws \
        --with-x \
        --with-umfpack \
        --with-umfpack-include=/usr/include/suitesparse
      
------- Comment #6 From Sylvestre LEDRU 2008-12-15 14:14:03 -------
I am not sure it is related but why you are not using --with-prefix ?
      
------- Comment #7 From Andrea 2008-12-15 15:10:49 -------
because in rpms spec file, use the macro %configure is the same to give (on 32bit hosts) :

./configure
--host=i686-pc-linux-gnu
--build=i686-pc-linux-gnu
--target=i586-suse-linux
--prefix=/usr
--exec-prefix=/usr
--bindir=/usr/bin
--sbindir=/usr/sbin
--sysconfdir=/etc
--datadir=/usr/share
--includedir=/usr/include
--libdir=/usr/lib
--libexecdir=/usr/lib
--localstatedir=/var
--sharedstatedir=/usr/com
--mandir=/usr/share/man
--infodir=/usr/share/info


the problem any way is not the prefix, scilab search libs in

 /usr/share/scilab//modules/<module-name>/.libs directory and not in

/usr/local or any other prefix related path...

i'm looking on /usr/share/scilab/etc files but i'm not able to find thing.
      
------- Comment #8 From Sylvestre LEDRU 2008-12-15 15:30:50 -------
ok, thanks

Could you try with this patch:
http://svn.debian.org/viewsvn/debian-science/packages/scilab/trunk/debian/patches/librarypath.diff?rev=35236&view=markup

We are doing a simple dlopen. If it can find it in the LD_LIBRARY_PATH, it tries againt an hardcoded path for the dev
env.
      
------- Comment #9 From Andrea 2008-12-15 15:53:14 -------
i'm trying... scilab is compiling right now...

btw

i found in /usr/share/scilab/etc/librarypath.xml that:

.... cat .....
<!-- Developpement environment -->
<path value="$SCILAB/modules/action_binding/.libs"/>
<path value="$SCILAB/modules/console/.libs"/>
<path value="$SCILAB/modules/history_manager/.libs"/>
<path value="$SCILAB/modules/completion/.libs"/>
<path value="$SCILAB/modules/localization/.libs"/>
<path value="$SCILAB/modules/renderer/.libs"/>
<path value="$SCILAB/modules/graphic_export/.libs"/>
<path value="$SCILAB/.libs"/>
.... cat .....

as you can see it looks to be default scilab behavior...

the problem are 2 any way..

1st) as told 

$SCILAB/modules/<module-name>/.libs

directory does not exist..

2nd) no libs should be installed in /usr/share/.. (and scilab DOES NOT install there) so it is a wrong place to search
libraries any way....

libraries should alway be in /usr/lib(64) (and subfolders) and/or in /usr/local/lib(64) and subfolders
      
------- Comment #10 From Sylvestre LEDRU 2008-12-15 16:05:08 -------
Stuff in etc/librarypath.xml is not used by the dynamic load (maybe this is an error)

1) I know and it is normal. .libs/ is used by the developer who are working on Scilab. In this case, data & libs are in
the same tree ($SCILAB).
Therefor the 2) is obsolete.
      
------- Comment #11 From Andrea 2008-12-15 17:04:04 -------
well.. debian patch fix the problem thanks
      
------- Comment #12 From Sylvestre LEDRU 2008-12-15 17:06:47 -------
You are welcome (btw, I am the author of the debian package)
Thanks for testing.
      

Attachments
libfftw3 patch (496 bytes, patch)
2008-12-14 23:08,Andrea
no flags Details
errors displayed into scilab console (6.67 KB, text/plain)
2008-12-14 23:10,Andrea
no flags Details


Note

You need to log in before you can comment on or make changes to this bug.

Related actions