crossbridge-community / crossbridge

C/C++ Compiler for the ActionScript Virtual Machine (AVM2)
http://sourceforge.net/projects/crossbridge-community/
Other
151 stars 36 forks source link

Java compilation error with 1.0.2 master #15

Closed trzecieu closed 10 years ago

trzecieu commented 10 years ago

result of compiling using current SDK

$ make ASC2: java -jar D:/APP/CB-1.0.2/sdk/usr/lib/asc2.jar -merge -md -------- Sample 1 -------- Compiling EXE ... "/cygdrive/d/APP/CB-1.0.2/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -o hello.exe collect2: ld terminated with signal 13 [Broken pipe] java.lang.UnsupportedClassVersionError: flascc/AlcTool : Unsupported major.minor version 52.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access$100(URLClassLoader.java:71) at java.net.URLClassLoader$1.run(URLClassLoader.java:361) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482) Exception in thread "main" Makefile:30: recipe for target 'T01' failed make: *\ [T01] Error 1

compile result using latest adobe sdk: $ make ASC2: java -jar D:/APP/CROSSBRIDGE/sdk/usr/lib/asc2.jar -merge -md -------- Sample 1 -------- Compiling EXE ... "/cygdrive/d/APP/CROSSBRIDGE/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -o hello.exe Compiling SWF ... "/cygdrive/d/APP/CROSSBRIDGE/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -emit-swf -swf-version=23 -swf-size=800x600 -o hello.swf Generating Exports.txt ... "/cygdrive/d/APP/CROSSBRIDGE/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs -c hello.c -o hello.o cp -f exports.tpl exports.txt "/cygdrive/d/APP/CROSSBRIDGE/sdk//usr/bin/nm" hello.o | grep ' T ' | sed 's/.__//' | sed 's/._ T //' >> exports.txt Compiling SWF (LTO) ... "/cygdrive/d/APP/CROSSBRIDGE/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -flto-api=exports.txt -emit-swf -swf-version=23 -swf-size=800x600 -o hello-lto.swf

more info: $ uname -r 1.7.30(0.272/5/3) $ java -version java version "1.7.0_60" Java(TM) SE Runtime Environment (build 1.7.0_60-b19) Java HotSpot(TM) Client VM (build 24.60-b09, mixed mode) $ arch i686

vpmedia commented 10 years ago

Hi, I'm using Java 1.8 so the tooling has been compiled to v1.8 source/target (meanwhile i've noticed that this breaks compatibility with older java versions just did not have the moment to rebuild the whole stuff) Anyway option A. is that you update your JDK to 1.8 / option B is to wait while i can build a stable SDK using an OSX host and modify the makefile to target >=1.7 Java..

Cheers

trzecieu commented 10 years ago

Hi, you were right. After update to JDK 1.8 problem solved but another appear.

ASC2: java -jar D:/APP/CROSSBRIDGE/1.0.2/sdk/usr/lib/asc2.jar -merge -md -------- Sample 1 -------- Compiling EXE ... "/cygdrive/d/APP/CROSSBRIDGE/1.0.2/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -o hello.exe

java.io.FileNotFoundException: C:\cygwin\tmp\swfresolve.in.GfkkyX (System nie mo▒e odnale▒▒ okre▒lonej ▒cie▒ki) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(Unknown Source) at flascc.AlcTool.swfresolve(AlcTool.java:414) at flascc.AlcTool.main(AlcTool.java:59) Compiling SWF ... "/cygdrive/d/APP/CROSSBRIDGE/1.0.2/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -emit-swf -swf-version=23 -swf-size=800x600 -o hello.swf java.io.FileNotFoundException: C:\cygwin\tmp\swfresolve.in.TqiKJj (System nie mo▒e odnale▒▒ okre▒lonej ▒cie▒ki) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(Unknown Source) at flascc.AlcTool.swfresolve(AlcTool.java:414) at flascc.AlcTool.main(AlcTool.java:59) Generating Exports.txt ... "/cygdrive/d/APP/CROSSBRIDGE/1.0.2/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs -c hello.c -o hello.o cp -f exports.tpl exports.txt "/cygdrive/d/APP/CROSSBRIDGE/1.0.2/sdk//usr/bin/nm" hello.o | grep ' T ' | sed 's/.__//' | sed 's/._ T //' >> exports.txt Compiling SWF (LTO) ... "/cygdrive/d/APP/CROSSBRIDGE/1.0.2/sdk//usr/bin/gcc" -jvmopt="-Xmx256m" -Werror -Wno-write-strings -Wno-trigraphs hello.c -flto-api=exports.txt -emit-swf -swf-version=23 -swf-size=800x600 -o hello-lto.swf java.io.FileNotFoundException: C:\cygwin\tmp\swfresolve.in.0Lh0C8 (System nie mo▒e odnale▒▒ okre▒lonej ▒cie▒ki) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.(Unknown Source) at flascc.AlcTool.swfresolve(AlcTool.java:414) at flascc.AlcTool.main(AlcTool.java:59)

I have custom cygwin instalation (D:\APP\CYGWIN)

vpmedia commented 10 years ago

Hi, According to the logfile 'C:\cygwin\tmp\' went hardcoded (FileNotFoundException..) I'll try to fix this, until a temporary solution could be to try to create a symbolic link before building: 'ln D:\APP\CYGWIN C:\Cygwin' or simply try to create the tmp folder at C:\Cygwin\tmp

trzecieu commented 10 years ago

Alright, up and running. It could be worth to add java 8 note in readme. Nice job.

vpmedia commented 10 years ago

Thanks for the feedback, i'll update the documentation..