[Contents] [TitleIndex] [WordIndex

1. Scilab as a packaging perspective

The Scilab consortium encourages distributions to create packages of Scilab.

1.1. Advised package layout

From the upstream tarballs, the packaging layout can be the following:

Name of the package

Description

Architecture

Depends

Recommends

scilab

The main package of Scilab

all

scilab-cli
scilab-full-bin

scilab-doc
scilab-doc-fr
scilab-doc-pt-br

scilab-cli

Scilab as a computing engine

all

scilab-minimal-bin
scilab-data
scilab-include

libscilab-java

The Java Scilab API

any

scilab-full-bin

scilab-data 

Multiplatform data

all

scilab-doc

The english documentation

all

scilab-doc-fr

The french documentation

all

scilab-doc-pt-br

The Brazilian Portuguese documentation documentation

all

scilab-include

All headers used by the dynamic link

any

scilab-minimal-bin

The basic library necessary for scilab-cli

any

scilab-data

scilab-minimal-bin-dbg

The debugging symbol library of scilab-minimal-bin

any

scilab-full-bin

All the remaining libraries mandatory for scilab
Depends on scilab-minimal-bin

any

scilab-minimal-bin

scilab-full-bin-dbg

The debugging symbol library of scilab-full-bin

any

scilab-test

All Scilab unitary/non-reg tests

all

Runtime Java thirdparty dependencies should depend on scilab-full-bin since scilab-cli (which depends on scilab-minimal-bin) can be used without any Java code.

1.2. Note for distribution packagers

Scilab consortium is contributing to the packaging of Scilab under Debian and Ubuntu. Therefor, this allow to update and patch Scilab to work correctly under distributions. These patches can be used freely by other distributions: See Debian/Ubuntu related patches

Patches for other distributions are also available:

1.3. Third party dependencies

All Scilab dependencies are described in the page Dependencies of Scilab 5.X. Usually, when not available, new dependencies are packaged into Debian before a new release of Scilab. Don't hesitate to reuse patches.

1.4. Contact

For packaging aspects, please subscribe to the distributor mailing list.

1.5. Some distribution patches

As said previously, Scilab consortium contributes to Debian/Ubuntu by packaging Scilab and some of it dependencies. Here is the list of available patches which can be reused by other distributions.

1.5.1. Scilab 5.2.1

Patch file

Description

addchapter.diff

Only load the help when the scilab-doc package is installed

adddemo.diff

Enables the demos when available

buildDocPT_BR.diff

Builds the português do Brasil documentation

jhdf2.6.diff

Adapt the code of Scilab to build against JHDF 2.6

librarypath.diff

 Update the library path for Debian paths

missingaddchapter.diff

A help chapter was not loaded in the doc

modelicac-not-available.diff

 ocamlopt is not available under all architectures.
Provide a feedback to the user about that

renesas-sh.diff

Support of Linux under Renesas SH(sh4)

s390javadetection.diff

Support of Linux under s390

sparc64.diff

Support of Linux under sparc64

1.6. FAQ

1.6.1. I get an error about HDF5 with Scilab 5.2.0 ?

    [javac] /usr/src/packages/BUILD/scilab-5.2.0/modules/hdf5/src/java/org/scila
b/modules/hdf5/read/H5Read.java:56: cannot find symbol
    [javac] symbol  : method H5Gget_obj_info_all(int,java.lang.String,java.lang.
String[],int[])
    [javac] location: class ncsa.hdf.hdf5lib.H5
    [javac]     H5.H5Gget_obj_info_all(fileId, groupName, allObjectsName, allObj
ectsType); 
    [javac]       ^
    [javac] Note: /usr/src/packages/BUILD/scilab-5.2.0/modules/hdf5/src/java/org/scilab/modules/hdf5/read/H5ReadScilabCommonList.java uses unchecked or unsafe operations.
    [javac] Note: Recompile with -Xlint:unchecked for details.
    [javac] 1 error

It is because you are trying to build Scilab against JHDF2.6. Apply this patch

1.6.2. I get and error about jgraphx with Scilab 5.2.0 ?

    [javac] /usr/src/packages/BUILD/scilab-5.2.0/modules/xcos/src/java/org/scilab/modules/graph/ScilabGraph.java:78: cannot find symbol                          
    [javac] symbol  : method getArgAt(int)                                                                                                                       
    [javac] location: class com.mxgraph.util.mxEventObject                                                                                                       
    [javac]             undoManager.undoableEditHappened((mxUndoableEdit) evt.getArgAt(0));      
[...]
                                                                    
    [javac] /usr/src/packages/BUILD/scilab-5.2.0/modules/xcos/src/java/org/scilab/modules/xcos/palette/XcosPalette.java:190: cannot find symbol                  
    [javac] symbol  : constructor mxEventObject(java.lang.Object[])                                                                                              
    [javac] location: class com.mxgraph.util.mxEventObject                                                                                                       
    [javac]     eventSource.fireEvent(mxEvent.SELECT, new mxEventObject(new Object[] {   

It is because you are using a recent version of jgraphx. Apply this patch

1.6.3. Why scilab-include is not Arch: all (ie the same package for all archs) ?

Because some elements in machine.h are different between 32 & 64 bits and some modules (toolboxes) relies on it.


2022-09-08 09:27