[Scilab-Dev] Compiling Scilab for macOS

Stéphane Mottelet stephane.mottelet at utc.fr
Sun Apr 19 14:38:13 CEST 2020


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 <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://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 <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 <dev-bounces at lists.scilab.org> on behalf of Stéphane Mottelet <stephane.mottelet at utc.fr>
> Reply to: List dedicated to the development of Scilab <dev at lists.scilab.org>
> Date: Saturday, 18 April 2020 at 11:49
> To: "dev at lists.scilab.org" <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://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://codereview.scilab.org/#/c/21438/)
> 
> - jogl 2.4 (pick up the lastest release candidate at https://jogamp.org/deployment/archive/rc/). jogl 2.4. is absolutely needed (see http://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://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 <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 <users-bounces at lists.scilab.org> on behalf of Stéphane Mottelet <stephane.mottelet at utc.fr>
> Reply to: Users mailing list for Scilab <users at lists.scilab.org>
> Date: Tuesday, 14 April 2020 at 17:00
> To: "users at lists.scilab.org" <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://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
> users at lists.scilab.org
> https://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
> http://www.utc.fr/~mottelet
>  
> 
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> https://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
> http://www.utc.fr/~mottelet
>  
> _______________________________________________
> users mailing list 
> users at lists.scilab.org 
> http://lists.scilab.org/mailman/listinfo/users
> 
>  
> 
>  
> 
> 
> 
> 
> 
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> https://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
> http://www.utc.fr/~mottelet
> _______________________________________________
> dev mailing list 
> dev at lists.scilab.org 
> http://lists.scilab.org/mailman/listinfo/dev 
> 
> 
> 
> 
> _______________________________________________
> dev mailing list
> dev at lists.scilab.org
> https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/dev
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/dev/attachments/20200419/6310988a/attachment.htm>


More information about the dev mailing list