[Scilab-Dev] Compiling Scilab for macOS

Chin Luh Tan chinluh.tan at bytecode-asia.com
Sun Apr 19 15:33:13 CEST 2020


hi again, 



great, some progress... after remove ant, no different, but after remove all java version except 1.8, i get following error instead:



    [javac] /Users/kennethkoh/scilab-6.1/scilab/modules/graphic_objects/src/java/org/scilab/modules/graphic_objects/datatip/Datatip.java:35: error: cannot access UserDefinedFormat

    [javac] import org.scilab.forge.scirenderer.ruler.graduations.UserDefinedFormat;

    [javac]                                                      ^

    [javac]   bad class file: /Users/kennethkoh/scilab-6.1/scilab/modules/scirenderer/jar/scirenderer.jar(org/scilab/forge/scirenderer/ruler/graduations/UserDefinedFormat.class)

    [javac]     class file has wrong version 57.0, should be 52.0

    [javac]     Please remove or make sure it appears in the correct subdirectory of the classpath.




will explore more later.



CL






---- On Sun, 19 Apr 2020 21:15:38 +0800 Chin Luh Tan <chinluh.tan at bytecode-asia.com> wrote ----




I do always make clean before a new build  for this case, i even git another scilab to make sure it is really clean.

However  i did not uninstall the ant and java, will give a try again and get back to you. 



Thanks alot



Rgds,

Chin Luh





---- On Sun, 19 Apr 2020 20:38:13 +0800 mailto:stephane.mottelet at utc.fr  wrote ----

Hello,



Did you a make clean ? Did you completely uninstall all brew ant versions ? I know this should not be necessary but did you uninstall openjdk at 13 ?



S.


Le 19 avr. 2020 à 13:10, Chin Luh Tan <mailto:chinluh.tan at bytecode-asia.com> a écrit :



As I had start with brew, so I just tried to cont using the brew before I switch to fink if no success, and in fact, I get the similar error:





[javac] /Users/kennethkoh/scilab-6.1/scilab/modules/graphic_objects/src/java/org/scilab/modules/graphic_objects/xmlloader/CSSParser.java:17: error: package javax.annotation does not exist

    [javac] @javax.annotation.Generated("JFlex")

    [javac]                  ^

    [javac] /Users/kennethkoh/scilab-6.1/scilab/modules/graphic_objects/src/java/org/scilab/modules/graphic_objects/CallGraphicController.java:68: warning: [deprecation] Double(double) in Double has been deprecated

...

...

    [javac] Note: Some input files use unchecked or unsafe operations.

    [javac] Note: Recompile with -Xlint:unchecked for details.

    [javac] 1 error

    [javac] 12 warnings

        ^



Do correct me If I did anything wrong, my steps to reach here:



1. git scilab master

2. svn checkout pre-requisite as describe in https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/wiki.scilab.org/Compiling%20Scilab%20under%20MacOSX#preview

3. patch change #21438 

4. manual install ant:

  

Java Configuration:

  JAVA_HOME ........... = 

  JAVAC ............... = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/javac

  JAVA_CLASSPATH ...... = 

  JAVA_VERSION ........ = 1.8

  JAVAC_FLAGS ......... = -g

  JAVA_JNI_INCLUDE .... = -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include/darwin

  JAVA_JNI_LIBS ....... = -framework JavaVM

  JAVA_JNI_LIBS_PRELOAD = 

  JAVA ................ = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java

  JAVADOC ............. = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/javadoc

  JAR ................. = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/jar

  ANT ................. = /Users/kennethkoh/Downloads/apache-ant-1.10.7/bin/ant



5. Get the jogl2.4 from rc. I am not sure this step is correct, but i just download 3 xz files, unzip them, and copy jogl-all.jar and glugen-rt.jar and replace in scilab thirdparty folder jogl2.jar and glugen2-rt.jar. 



checking jogl2...  /Users/kennethkoh/scilab-6.1/scilab/thirdparty/jogl2.jar 2.4 

Check of the presence of libjogl.jnilib and libjogl_awt.jnilib disabled under Mac OS X

checking gluegen2-rt...  /Users/kennethkoh/scilab-6.1/scilab/thirdparty/gluegen2-rt.jar 2.4 



6. Then I get the error as mentioned above. 



Any advice on this, or I shall try on the fink next.



thanks again.



Regards,

Chin Luh





---- On Sat, 18 Apr 2020 22:32:18 +0800 Arvid Rosén <mailto:arvid at softube.com> wrote ----



Hi,

 

You are right Stephane! Ant was in fact causing the problem here.

 

My workaround was:

brew install ant at 1.9

 

Trying to build with clang right now.

 

Cheers,

Arvid

 

From: dev <mailto:dev-bounces at lists.scilab.org> on behalf of Stéphane Mottelet <mailto:stephane.mottelet at utc.fr>
 Reply to: List dedicated to the development of Scilab <mailto:dev at lists.scilab.org>
 Date: Saturday, 18 April 2020 at 11:49
 To: "mailto:dev at lists.scilab.org" <mailto:dev at lists.scilab.org>
 Subject: [Scilab-Dev] Compiling Scilab for macOS

 


Hello,

That's one of the reasons why I don't like Homebrew: thos packaging system is quite aggressive w.r.t. software versions. I think The problem you have here is due to the Ant package, whose version needs openjdk13. Hence, all java builds within Scilab are
 done with java13. The only workaround I found is to uninstall the Ant Homebrew package and manually installed official build of 1.10.7 version built above JDK  1.8 (https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/ant.apache.org/bindownload.cgi).

My personnal setup to build Scilab 6.1 OSX version is

- OX HighSierra or Mojave

- Fink 0.45 as a packaging system, which is more conservative w.r.t. library versions

- Jogl >= 2.3.2 patch (https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/codereview.scilab.org/#/c/21438/)

- jogl 2.4 (pick up the lastest release candidate at https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/jogamp.org/deployment/archive/rc/). jogl 2.4. is absolutely needed (see https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/forum.jogamp.org/JOGL-on-Mojave-Mac-OS-10-14-td4039037.html), I had to build official 6.0.2 version above it.

On Catalina and latest XCode you can try to build with bundled clang which is now C++17 compliant. However, in order to build for Mojave and before, you cannot uses c++17 features.

I personnaly build Scilab under Mojave and HighSierra with the folowing configure flags :

 ./config.status --config
 '--without-openmp' '--without-tk' '--with-eigen_include=/Users/mottelet/git/scilab_master/scilab/lib/Eigen/includes' 'F77=gfortran-fsf-8' 'CC=gcc-fsf-8' 'LDFLAGS=-L/sw/lib/gcc8/lib/' 'CXX=g++-fsf-8' 'LIBS=-lstdc++fs'
console module has to be built separately with clang: cd modules/console make CC=clang. Imposing CC=clang globally is not recommended for exception handling between e.g. fortran/C/C++

If you manage to obtain a successful build, then you will encounter the link ordre problem. That's where I am stuck now. However, using https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/codereview.scilab.org/#/c/21211/ will allow you to use Scilab in -nw mode without any problem. But in the full GUI mode, clc, tohome, prompt are broken (no crash, just the message "This feature
 has not been implemented in this mode").

Tell me when you will be arrived at this point...

S.

 

 

 

 

Le 18/04/2020 à 04:43, Chin Luh Tan a écrit :

Hi Samuel, 


 


Thanks for your reply. Yes, there are 2 version of Java, another is 13, but in fact, i already use the export JAVA_HOME before "make":


 


Kenneths-MacBook-Air-2:scilab kennethkoh$ java -version

openjdk version "1.8.0_242"

OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_242-b08)

OpenJDK 64-Bit Server VM (AdoptOpenJDK)(build 25.242-b08, mixed mode)

Kenneths-MacBook-Air-2:scilab kennethkoh$ javac -version

javac 1.8.0_242



and also the configured show below:
 

checking JAVA_HOME variable... JAVA_HOME variable found, use it as JVM root directory


checking for zip or jar files to include on CLASSPATH... 

checking to see if the java compiler works... yes

Using JAVAC=/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/javac

Java found in /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home

checking type of jvm... jdk

checking java API version... 1.8

Using the following JNI include flags -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include/darwin

 

 


Java Configuration:

  JAVA_HOME ........... = 

  JAVAC ............... = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/javac

  JAVA_CLASSPATH ...... = 

  JAVA_VERSION ........ = 1.8

  JAVAC_FLAGS ......... = -g

  JAVA_JNI_INCLUDE .... = -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include -I/Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/include/darwin

  JAVA_JNI_LIBS ....... = -framework JavaVM

  JAVA_JNI_LIBS_PRELOAD = 

  JAVA ................ = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/java

  JAVADOC ............. = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/javadoc

  JAR ................. = /Library/Java/JavaVirtualMachines/adoptopenjdk-8.jdk/Contents/Home/bin/jar

  ANT ................. = /usr/local/bin/ant

 

 


but the issue remained the same
 
 thanks.
 
 Regards,
 Chin Luh
 

---- On Fri, 17 Apr 2020 22:43:46 +0800 Stéphane Mottelet <mailto:stephane.mottelet at utc.fr> wrote ----


 

Hello,

I think that you may have more than one JDK installed on your computer. The problem

with error: package javax.annotation does not exist

is likely due to  java 11. Make sure that at configure time the right JDK is detected, and if necessary force the detection with  configure flag

--with-jdk=DIR

and/or

export JAVA_HOME=`/usr/libexec/java_home -v '1.8*'`

S.

Le 14/04/2020 à 17:55, Arvid Rosén a écrit :


Sorry for top-posting, but here are a few of the errors I get:

 

Something missing with:

import javax.activation.MimetypesFileTypeMap;

 

A bunch of these:

compile:

    [javac] Compiling 1 source file to /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/graphic_objects/build/classes

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/graphic_objects/src/java/org/scilab/modules/graphic_objects/xmlloader/CSSParser.java

    [javac] warning: Supported source version 'RELEASE_6' from annotation processor 'com.jogamp.gluegen.structgen.CStructAnnotationProcessor'
 less than -source '8'

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/graphic_objects/src/java/org/scilab/modules/graphic_objects/xmlloader/CSSParser.java:17: error:
 package javax.annotation does not exist

    [javac] @javax.annotation.Generated("JFlex")

    [javac]                  ^

    [javac] 1 error

    [javac] 1 warning

 

And also this one:

compile:

    [javac] Compiling 5 source files to /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/build/classes/v2

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/src/java/org/scilab/modules/javasci/Call_Scilab.java

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/src/java/org/scilab/modules/javasci/Call_ScilabJNI.java

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/src/java/org/scilab/modules/javasci/JavasciException.java

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/src/java/org/scilab/modules/javasci/Scilab.java

    [javac] /Users/arvid/everything/scilab/src/scilab/scilab-6.1.1/scilab/modules/javasci/src/java/org/scilab/modules/javasci/ScilabVariablesJavasci.java

    [javac] warning: [options] bootstrap class path not set in conjunction with -source 6

    [javac] error: Source option 6 is no longer supported. Use 7 or later.

    [javac] error: Target option 6 is no longer supported. Use 7 or later.

 

Cheers,

Arvid

 

From: Scilab Users List mailto:users-bounces at lists.scilab.org on behalf of Stéphane Mottelet mailto:stephane.mottelet at utc.fr
 Reply to: Users mailing list for Scilab mailto:users at lists.scilab.org
 Date: Tuesday, 14 April 2020 at 17:00
 To: mailto:users at lists.scilab.org mailto:users at lists.scilab.org
 Subject: Re: [Scilab-users] Compiling Scilab for macOS

 


Hello,

Le 14/04/2020 à 16:51, Arvid Rosén a écrit :


Hi,

 

I still can’t find any Scilab 6.1 builds for macOS (despite the info text here: https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.scilab.org) , so I’m trying to compile one myself.


Great, at least we will be two now...

However, I get a bunch of Java errors during compilation.


Which kind ?

I’m currently using a JDK from AdoptOpenJDK (Java 8). Is this correct,


Yes.

S.

or should I try using some other version or provider for compiling Scilab on macOS Catalina?

 

Cheers,

Arvid

 

_______________________________________________

users mailing list

mailto:users at lists.scilab.org

https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users


-- 

Stéphane Mottelet

Ingénieur de recherche

EA 4297 Transformations Intégrées de la Matière Renouvelable

Département Génie des Procédés Industriels

Sorbonne Universités - Université de Technologie de Compiègne

CS 60319, 60203 Compiègne cedex

Tel : +33(0)344234688

https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.utc.fr/~mottelet


 

_______________________________________________

users mailing list

mailto:users at lists.scilab.org

https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users

 


-- 

Stéphane Mottelet

Ingénieur de recherche

EA 4297 Transformations Intégrées de la Matière Renouvelable

Département Génie des Procédés Industriels

Sorbonne Universités - Université de Technologie de Compiègne

CS 60319, 60203 Compiègne cedex

Tel : +33(0)344234688

https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.utc.fr/~mottelet

 


_______________________________________________
 users mailing list 
 mailto:users at lists.scilab.org 
 https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users


 

 







_______________________________________________

users mailing list

mailto:users at lists.scilab.org

https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users


-- 

Stéphane Mottelet

Ingénieur de recherche

EA 4297 Transformations Intégrées de la Matière Renouvelable

Département Génie des Procédés Industriels

Sorbonne Universités - Université de Technologie de Compiègne

CS 60319, 60203 Compiègne cedex

Tel : +33(0)344234688

https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/www.utc.fr/~mottelet



_______________________________________________

dev mailing list 

mailto:dev at lists.scilab.org 

http://lists.scilab.org/mailman/listinfo/dev 











_______________________________________________
dev mailing list
mailto:dev at lists.scilab.org
https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/dev




_______________________________________________ 
dev mailing list 
mailto:dev at lists.scilab.org 
http://lists.scilab.org/mailman/listinfo/dev 






_______________________________________________ 
dev mailing list 
dev at lists.scilab.org 
http://lists.scilab.org/mailman/listinfo/dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/dev/attachments/20200419/11a7944d/attachment.htm>


More information about the dev mailing list