Comments (7)
@amellnik , @dhoegh Thanks, I see.
What do you guys think about this post from @vtjnash ?
It lays out a way to achieve static compilation, but looks little daunting.
Yeah, static compilation works (in many cases), and you can follow that to do it. What we really need is someone to make a package that makes static compilation easier. That just requiring really figuring out how to do it, and automating some of the steps. Since it's all nicely laid out in one giant blog post, the "hard" work is already done, and icing shouldn't be too hard.
from buildexecutable.jl.
I'm pretty sure you will still have the JIT overhead based on the discussion here, but @dhoegh can confirm.
from buildexecutable.jl.
@amellnik Thanks, does that mean that BuildExecutable does not do a static compilation ? I am trying to see how I can remove the JIT overhead from my application. I don't use any dynamic features like (@eval) etc.
from buildexecutable.jl.
That's my understanding -- see for example @ChrisRackauckas's post here. All this package does is bundle julia along with the script in an executable.
from buildexecutable.jl.
Yes that's correct and hence it will still require jit compilation of the methods. But technically you could get rid of the jit, by ensuring all functions in a module is precompiled with the correct arguments and having type stable functions, but that's true for any module with precompilation on.
from buildexecutable.jl.
@amellnik , @dhoegh Thanks, I see.
What do you guys think about this post from @vtjnash ?
It lays out a way to achieve static compilation, but looks little daunting.
from buildexecutable.jl.
I just found this package based on @ChrisRackauckas's discourse post and I have a question about usage. So the use case I have is to bundle a julia script into an EXE that users on Windows can use "without installing anything" I don't know the exact definition of "without installing anything" on windows. But I know that using an administrator account to modify some system files definitely won't fly. It doesn't matter if the julia runtime and LLVM come with that EXE, either way it satisfies the constraints.
Will BuildExecutible.jl work for such a use case? Namely, make an EXE that you can run with a double click without an Admin account?
from buildexecutable.jl.
Related Issues (20)
- Compilation of packages HOT 4
- @windows_only is deprecated in Julia v0.5.0 HOT 2
- Writing to /usr/lib HOT 3
- Whats the point in using inference0? HOT 1
- .juliarc.jl not respected
- Test fails Ubuntu 16 Julia 0.5.2
- Test Failed under julia 0.6
- Fails with "@unix_only not defined" HOT 5
- Adopt approach from JuliaComputing/static-julia? HOT 1
- Tag a new release
- Portable cpu_target on Windows HOT 1
- Build sys.o hangs
- Test failed...
- Wont build with Gtk
- error
- undefined reference to `jl_show' HOT 1
- windows 7 portability issue
- Julia 1.0 Build Error
- Info about upcoming removal of packages in the General registry
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.
from buildexecutable.jl.