scilab cannot create scilab java main class что делать
Scilab не может создавать Java Main-Class на Ubuntu 17.10 [duplicate]
Я установил Ubuntu 16.04.3 LTS на компьютер с AMD A4-4000 APU with Radeon(tm) HD Graphics и установил Scilab 5.5.2 здесь из официального репозитория (версия пакета 5.5.2-2ubuntu3).
Он работал нормально на 2017- 12-24, но сломано некоторым последним обновлением. Я могу опубликовать dpkg-log, но кажется, что он связан с MESA:
$ cat /var/log/dpkg.log* | grep «status installed.*mesa» 2018-01-11 14:51:08 status installed libglapi-mesa:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:09 status installed libglapi-mesa:i386 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:10 status installed libgl1-mesa-dri:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:11 status installed libgl1-mesa-dri:i386 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:16 status installed libegl1-mesa:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:17 status installed libwayland-egl1-mesa:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:18 status installed libosmesa6:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:18 status installed libosmesa6:i386 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:19 status installed libgl1-mesa-glx:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:20 status installed libgl1-mesa-glx:i386 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:20 status installed libgles2-mesa:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-11 14:51:21 status installed mesa-vdpau-drivers:amd64 17.2.4-0ubuntu1
16.04.2 2018-01-12 12:24:25 status installed mesa-va-drivers:amd64 17.2.4-0ubuntu1
Моя системная информация:
In Software & amp; Обновления software-properties-gtk У меня есть только одно предложение об установке пакета amd64-microcode. Его установка не помогает.
Scilab does not start after some upgrades on Ubuntu Xenial
Bug Description
Software that use libjogl2-java (Scilab, Matlab. ) fail to run, because Mesa dropped ‘Gallium’ from the renderer string.
Scilab cannot create Scilab Java Main-Class (we have not been able to find the main Scilab class. Check if the Scilab and thirdparty packages are available).
Expected results:
Scilab works normally on Ubuntu 16.04 LTS system.
Actual results:
see error above.
[Regression potential]
The fix is a simple oneliner that allows libjogl2-java to detect Mesa with both new and original version of Mesa.
Software rendering with recent mesa (either LLVMPipe, softpipe or swr) breaks matlab.
Seen with MATLAB 2016a on Kubuntu 17.04 with the latest (git) mesa as of today.
Graphic commands (e.g. plot) hang and make it impossible to close Matlab cleanly.
On llvmpipe the ‘opengl info’ matlab command crashes with
On softpipe, the same command hangs.
This is curious because matlab has itself a software rendering mode, that seems to rely on mesa X11. The opengl info for it returns
Version: ‘2.1 Mesa 10.5.2’
Vendor: ‘Brian Paul’
Renderer: ‘Mesa X11’
MaxTexture Size: 16384
Visual: ‘Visual 0x72, (RGBA 32 bits (8 8 8 8), Z depth 16 bits, Hardware acceleratio…’
Software: ‘true’
HardwareS upportLevel: ‘none (known graphics driver issues)’
SupportsGraphi csSmoothing: 0
SupportsDep thPeelTranspare ncy: 1
SupportsAlignVe rtexCenters: 0
Extensions: <151x1 cell>
MaxFrameBuffer Size: 16384
So, it looks like mesa was supporting matlab 2016a just fine at the time of 10.5.2 and that we are now facing a regression.
I won’t be looking at the issue, I’m afraid yet here’s a couple of ideas/suggestions that should help:
I’ll try to work on the last point aka get more verbose information.
In any case, my intent was mostly to assure that a trace of the problem is present on the bug tracker, in case other users run into the issue and possibly to guide them if they need to get new hardware with the need to run Matlab on it.
Unfortunately the Matlab experience on Linux is sad. Not working with nouveau. Not working with soft rendering, either. Working with its own soft rendering, but with many limitations. Fortunately, it seems OK on intel graphics.
Sergio, I installed the 30-day trial of Matlab r2017b and typed ‘opengl info’ in the command window. I did not get a java exception. I got an error message that reads:
«»»
MATLAB has experienced a low-level graphics error, and may not have drawn correctly.
Read about what you can do to prevent this issue at Resolving Low-Level Graphics Issues then restart MATLAB.
To share details of this issue with MathWorks technical support,
please include this file with your service request.
«»»
I don’t see that issue when using NVIDIA’s driver.
I used apitrace to create a trace of Matlab’s GL calls with llvmpipe and with NVIDIA’s linux driver. It looks like Matlab begins by trying to find the highest supported GL version of the core profile. With NVIDIA’s driver it finds 4.5. With llvmpipe it finds 3.3.
Then, it also tries to create compatibility profile context. With NVIDIA’s driver it again gets a 4.5 context. With llvmpipe, we don’t have such profiles and Matlab stops after getting a GL 3.1 context.
Finally, with llvmpipe, Matlab tries to create a 3.3 compatibility profile and fails. It then successfully creates a legacy context with glXCreateNewCon text(). It calls glGetIntegerv( GL_MAJOR/ MINOR_VERSION) then destroys the context.
As far as I an tell, Matlab simply doesn’t accept llvmpipe’s context/version offerings. Either that’s by design or there’s some sort of logic bug in MatLab that gives up on GL support after failing to create a particular kind of context.
You could try installing some older versions of Mesa to see if Matlab 2016a works/fails. But Matlab 2017b seems to act differently.
thanks for testing! Indeed, I think that Matlab 2016 is fine with the NVIDIA proprietary driver. However, I cannot use it because I have a KDE desktop and the nvidia proprietary drivers hang the konsole as per
Furthermore, I prefer the free drivers when my graphics card copes with them.
The different response to the opengl info may be related to a slightly different mesa/graphics stack combination. Incidentally, it is unclear to me whether you got the «MATLAB has experienced a low-level graphics error» with llvmpipe or the hardware driver.
Matlab seems to use some java library to interact with opengl and I do not know if it is something commercial or something open source that MathWorks has adapted to its needs. In the latter case, testing might be easier.
. looks like also scilab has issues with the software renderer. With LIBGL_ALWAYS_ SOFTWARE= 1, scilab cannot plot (shows empty plot windows). May be a totally unrelated issue, but I think that scilab and matlab have in common the use of jogamp for graphics rendering.
By using parallel build
where x is the number of concurrent build tasks (don’t set a big number, this could overload your computer).
By using ccache
Use ccache, http://ccache.samba.org/ For this, install ccache and launch the configure with the options:
(we have report that CXX sometimes does not work under Fedora, just removed it)
Some quick benchmarks show an improvement of about 30% of the compilation’s length.
I want to color the output, how can I do that?
Providing those flags will color warnings/errors/etc (gcc4.8.5+ & clang support them).
There are dependencies between libraries. If the compilation process detects that the library which it depends on has changed, it will recompile. It is done because a symbol (ex : function name) may have been changed and this could lead to an undefined symbol.
When I try to regenerate Makefile.in and/or configure, I got a few warnings
If you have something like :
It is (unfortunately) normal. We have to override compilation flags in order to deactivate optimization for a few files.
I get this error when I am compiling lapack.
This may come from the fact that you may have tried to compile scilab with an Intel Compiler and then switch to a GNU compiler. (difference between lib included or not).
Some version of libtool have problem with Intel compilers. Try a more recent version (or the CVS one). Caution : you shouldn’t have this error unless you are altering configure.ac or Makefile.am
When I compile Scilab, I get a »undefined versioned symbol name _LIB_VERSION@@GLIBC_2.0»
I got an undefined reference ld error on »__secure_getenv» while building
All needed packages to compile Scilab under Linux can be found in Scilab SVN pre-requirements directory:
So, to download scilab and the prerequirements packages :
Note : up to the 5.4.1 version, the repo was Linux for 32 bits, linux_x64 for 64 bits. Since then it has been changed to linux and linux_x64
I compiled Scilab once but since I updated, it is complaining about a missing file
If it looks like (case A):
or with Scilab binary (case B):
It is a problem of the autotools which do not rebuild the dependencies correctly. In case A, please do
It should fix this problem.
In case B, please do:
Compilation of Scilab against Tcl/Tk 8.5 stops with an error when building macros
The workaround is to:
and start again. This problem happens for instance with KUbuntu 7.10 (Gutsy Gibbon) and OpenSuse 10.3 as well.
I compiled Scilab successfully but I get an error during startup
then you can work around it by doing:
and launch Scilab again. This problem happens for instance with openSuse 10.3. More information
I get a long Java warning on startup but Scilab is working
It is the same issue as the previous one (lib XCB).
The very crappy fix is:
I have some weird undefined reference to some gfortran stuff
If you have some errors like:
It is probably because you update some of your compilers. make clean in the module should fix the issue.
I want to compile Scilab without Java
Please not that you won’t have the Scilab GUI and the Scilab-Java API/Connector.
When I plot a function in Scilab the plot produces a blank window. How do I fix this?
You may see an error like:
The problem is twofold. The shared library libgluengen-rt.so cannot be found or the gluegen-rt.jar, jogl.jar class libraries cannot be found either. Make the three dynamic libraries (libgluegen-rt.so, libjogl.so, libjogl_awt.so) available in the LD_LIBRARY_PATH or place them in the java platform directory, like /path/to/the/jdk1.xxx/jre/lib/amd64 if you are running x86_64 linux or /path/to/the/jdk1.xxx/jre/lib/i386 if you are running i386 linux (32bit) or where ever your java runtime environment is. The jogl*.so libraries are the Java OpenGL libraries for grapjics.
Also update the SCI/etc/classpath.xml file and update the path to gluegen-rt.jar or jogl.jar or place both jar libraries in the java extension directory like /path/to/the/jdk1.xxx/jre/lib/ext for my version of Java. By doing this you do not have to include them in the CLASSPATH.
I get the message «Exception in thread «main» java.lang.UnsatisfiedLinkError: Can’t load library: /usr/lib/jvm/java-6-openjdk/jre/lib/ext/libjava-access-bridge-jni.so» on startup
This problem is related to a packaging issue of the JVM under Debian (and maybe Ubuntu) in the version 6b14-1.5
pre1-5 (at least). Update your JVM (for example, version 6b16-4 will work).
I get tonnes of «undefined reference to» at the final link of Scilab binary
If you can some error messages like:
Try to remove the argument -Wl,—as-needed which is probably causing this error.
You just need to customize your LDFLAGS variable to add the path to ATLAS. For example, if your ATLAS library is in /usr/lib64/atlas (like under mandriva/fedora 64 bits):
This command will allow configure to detect automatically that you have an ATLAS library.
It is likely that Scilab is loading a wrong library.
This occurs if you are build Scilab and there is already a packaged Scilab installed.
Using the dynamic link, I am getting «ignoring unknown tag F77»
Usually, this is because the dynamic link is not able to find a Fortran compiler. Try to install one.
On startup, I get ‘Document is empty’
I start Scilab but I am getting:
This problem occurred under Mandriva and Mageia. It was due to a bug of Tcl package. It was shipping it own buggy zlib. This zlib was using by libxml2 creating this issue.
I have been playing with Java 7 and coming back to version 6 fails
If you are getting the following error, that mean that Scilab could not load the jar tree. It can come from many reasons.
If you are editing etc/jvm_options.xml to add $SCILAB/modules/core/jar/org.scilab.modules.core.jar in it, you might get:
It should be fixed within the Scilab build system by target=»6″ in the build.incl.xml files.
How can I reproduce Scilab started with stdin closed
On startup, I get Glib-ERROR on gmem.c
On KDE the qt-gtk2 Oxygen style engine is buggy. Changing the QT-GTK theme engine to another one fix this issue.
Icons and Mimetypes user installation
Scilab provide a desktop file, icons and mimetypes descriptions on the source tree. You can copy them on $XDG_DATA_DIR eg.
/.local/share to have a nive desktop integration.
When trying to build Scilab from source following instructions given here (https://wiki.scilab.org/Compilation%20of%20Scilab). If you get following error:
The above error may be faced when trying to build Scilab 6.x on Fedora24, Mint18 and Ubuntu 16.04 distros (or newer versions of linux).
See Also
howto/install/linux for the basic compiling instructions.
Scilab не работает в Debian
P.S.: установлен Oracle JDK 7
В Debian Stable sun-java-jdk 6, а в testing только openjdk.
Тогда ищите где у вас расположена библиотека libjvm.so и правьте сценарий
Если вы используете самостоятельно собранную версию Scilab, обновите сценарий bin/scilab для указания пути к JVM.
Только не используйте библиотеку от gcc.
обновите сценарий bin/scilab для указания пути к JVM.
Я имел ввиду: где он лежит?
Выражайте тогда более чётко то, что вы имеете ввиду.
Там нет ни слова про libjvm.so
И не должно быть, там должна быть указана переменная JAVA_HOME, в которой указан путь до директории java или просто указан абсолютны путь.
Я же вам сказал проанализируйте то, что указано в файле и путь до библиотеки. Мда, неужели это так трудно понять и сделать.
Scilab cannot create scilab java main class что делать
I got the following message after the install when I want to run scilab.
Scilab cannot create Scilab Java Main_Class.
(We have not been able to find the main Scilab Class.
Check if the Scilab and thirdparty packages area available).
Is there anybody who can help me with this problem.
I thank you very much.
Can you make a copy of your SCIHOME
(http://help.scilab.org/docs/5.5.0/en_US/SCIHOME.html) directory before
removing it and then restart Scilab?
If Scilab starts after this cleanup we will use your SCIHOME copy as a
basis for a bug report.
I am very sorry but it did not find a subdirectory scihome and
dir scihome.html /s /p did not find any file on my drive C:
and :
C:\Program Files\scilab-5.5.0>DIR >>C:\LISTING.TXT
Access is denied.
gives access denied.
Thank you very much Vincent and others.
It’s not scihome, but capital letters SCIHOME, which again is not the
real name of the directory, but a variable.
Start Scilab, in the console window, please type SCIHOME and Scilab
should respond with something like (in my case, Windows 7):
Please reply on the list so others can help you. I’m just a private
person and far from an expert in Scilab.
Which version of Scilab have you installed?
1. Left side = File browser
2. Middle = CONSOLE
3. Top right = Variable browser
4. Bottom right = Command History
As you can see, the CONSOLE is there, right in the middle of your GUI.
At least, this is the default setup for Scilab.
I’m not sure what went wrong with your installation, but one advice
would be to remove the installation, then re-download and re-install
(get Scilab 5.5.0).