aura's People
Forkers
terasaura's Issues
RoboVM Debugger
Hi ashley!
I'm currently working on a debugger for MobiDevelop's RoboVM fork, since this is really badly missing.
Some basics are working, but a lot is not. I thought it maybe interesting for your fork too and maybe you could join the development ;-)
Take a look at:
https://github.com/MobiDevelop/robovm/wiki/Implementing-a-Debugger and
https://github.com/MobiDevelop/robovm/tree/console_debugger
JavaFX Support
test javafx support and document
Runtime shared library.
Currently robovm/aura compiles binaries as a single static executable. It would be beneficial to have a separate (one or more) shared library with all runtime dependencies included. This would make the size of binaries smaller and fixes any licensing issues should aura ever work with openjdk.
Active RoboVM fork?
I followed from RoboVM's forks here, is this a kind of fork you are actively working on? if so I would love to help you with it, probably first things like docs and co.
create docker image
Create docker image to build aura
don't show usage on error
Stop usage statement being printed when compilation error occurs -- makes it difficult to see the error and is unnecessary.
Compiler wrapper
Need a wrapper to compile directly from java src files
Expand readme.md
Hi, this project looks promising. I would like to try it out but I don't really know where to start. Is it possible to expand the readme with:
- A brief description of the goals of this project (compared to other robovm forks)
- A 'getting started' ie how to compile simple java hello world to a native exectuable
- what is supported, what is not supported, on which platform it is supported
- know shortcomings
- ...
Building java code fails during test phase
Building with gradlew build
fails with the following error:
:llvm:test
aura.llvm.TargetMachineTest > testEmitToFile FAILED
java.lang.UnsatisfiedLinkError at TargetMachineTest.java:33
aura.llvm.TargetMachineTest > testAssemble FAILED
java.lang.NoClassDefFoundError at TargetMachineTest.java:46
aura.llvm.ObjectFileTest > testReadSections FAILED
java.lang.NoClassDefFoundError at ObjectFileTest.java:62
aura.llvm.ObjectFileTest > testLineNumberInfo FAILED
java.lang.NoClassDefFoundError at ObjectFileTest.java:123
aura.llvm.ObjectFileTest > testLoadFromFile FAILED
java.lang.NoClassDefFoundError at ObjectFileTest.java:42
aura.llvm.ModuleTest > testParseIRString FAILED
java.lang.NoClassDefFoundError at ModuleTest.java:36
aura.llvm.TargetTest > testGetTargets FAILED
java.lang.NoClassDefFoundError at TargetTest.java:34
aura.llvm.TargetTest > testLookupTarget FAILED
java.lang.NoClassDefFoundError at TargetTest.java:60
aura.llvm.TargetTest > testGetTarget FAILED
java.lang.NoClassDefFoundError at TargetTest.java:47
aura.llvm.TargetTest > testGetTargetsMap FAILED
java.lang.NoClassDefFoundError at TargetTest.java:40
13 tests completed, 10 failed, 3 skipped
:llvm:test FAILED
I was able to work around it by disabling the gradle task -x llvm:test
but ideally that should not be used.
Library support
Add a feature to output a library, rather than executable
Add line debugging
Exceptions should show line numbers:
aura:
java.lang.Exception: test
at com.example.HelloWorld.main(HelloWorld.java)
java:
Exception in thread "main" java.lang.Exception: test
at com.example.HelloWorld.main(HelloWorld.java:8)
old dependencies on robovm ext-clang & ext-llvm
Aura has git submodule dependencies on robovm repositories, which are in turn clones of other repositories.
The problem here is twofold:
A dependency on a dead project can potentially disappear. Rendering aura unbuildable.
Second, the robovm dependencies are clones of projects that haven't been updated in 2 years. Ideally aura should depend directly on the latest/more recent upstream projects and apply patches where needed during build.
Generate shared libs
Build on 64d946d and add two new features:
- Generate just the shared libs in a single installable directory (considering OS X install_name)
- Generate just a binary, which is linked to the above
fix aura script
bin/aura shell script still references robovm dirs and jars -- this needs to be fixed.
Also the env vars need to be renamed
Compiling jar with aura fails
Trying to compile an existing java jar with aura fails with error (I used the instructions in the wiki):
Exception in thread "main" java.lang.UnsatisfiedLinkError: Native library for linux-x86_64 not found
at aura.llvm.NativeLibrary.load(NativeLibrary.java:72)
at aura.llvm.binding.LLVMJNI.(LLVMJNI.java:804)
at aura.llvm.binding.LLVM.getLlvmHostTriple(LLVM.java:3103)
at aura.llvm.Target.(Target.java:36)
at aura.compiler.config.OS.getDefaultOS(OS.java:55)
at aura.compiler.target.ConsoleTarget.init(ConsoleTarget.java:93)
at aura.compiler.config.Config.build(Config.java:811)
at aura.compiler.config.ConfigBuilder.build(ConfigBuilder.java:402)
at aura.compiler.AppCompiler.main(AppCompiler.java:410)
-D properties aren't working
-D properties should be honoured by final binary (init.c?)
Unable to compile under Mac OS X 10.12
Is Mac OS X a supporting platform?
I am not able to compile it, I get the following error instead:
CMake Error at CMakeLists.txt:89 (message):
Failed to locate MacOSX SDK 10.11
Does not compile on OS X
There are multiple compile errors on OS X
investigate the usage of ccache
Ccache may help compilation speed. Not sure if it's possible, but worth investigating
Documentation
Write some doco:
- creating a distribution release
- compiling aura
- how to use aura
Add resource arg
Currently there's no way to add resources via CLI -- there should be an argument for this
--resource (-r) or similar
OpenJDK8/9 port
Currently robovm/aura uses the android/apache harmony jdk.
As aura targets desktop usage specifically, an openjdk port would be beneficial. initially this port could be targeted for the jdk8 compact profile 1 and gradually expanded to other profiles.
Perhaps it's interesting to investigate if openjdk mobile http://openjdk.java.net/projects/mobile/ could be of use?
Fix compilation args
compiler args follow a very java-like feel. Since the target here is command line usage, they should follow a more unix-feel
eg:
Instead of
java -jar aura/aura-dist/lib/aura-compiler.jar -cp classes -debug -verbose com.example.HelloWorld
maybe use
aura -c classes -g -v com.example.HelloWorld
Perhaps it might be of some gain to fix the wrapper script than to change the java code
Building native code fails
bash: ./configure: No such file or directory
It seems cmake is configured to run a ./configure command, yet nowhere is it configured to generate a configure file.
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.