Julia 将.jl脚本文件打包为可执行文件
julia 打包文件为可执行程序
一、构建exe文件
第一步:
using Pkg
Pkg.add("PackageCompiler")
第二步:使用包管理器创建应用程序的源代码所需要的项目和清单文件。
using Pkg
Pkg.generate("MyApp")
生成如下文件夹:
在MyApp ==> src ==> MyApp.jl 文件中的内容替换为你的代码,其中下面的 julia_main( ) 函数是程序的入口函数:
function julia_main()::Cint
# do something based on ARGS?
return 0 # if things finished successfully
end
第四步:执行以下命令,等待程序执行完成
using PackageCompiler
create_app("MyApp", "MyAppCompiled")
最后生成的文件在 MyAppCompiled ==> bin 中,名字为 MyApp.exe。
二、构建安装包
1. 创建源代码
Step1 在VScode中创建Tutorial文件夹,使用快捷键 Alt + J + O 进入Julia REPL;
Step2.1 通过pwd()函数可选择当前工作目录
Step2.2 通过cd()函数改变当前工作目录
Step3 在Tutorial文件夹下创建sourcecode.jl文件
Step3.1 编译代码,快捷键:Shift + Enter
Step3.2 在REPL中输入:helloapp( ) 进行测试
Step3.3 通过快捷键 Ctrl+L 清除REPL控制台界面,无法清楚变量。在.jl文件开头添加以下代码可实现
clear() = run(`cmd /c cls`)
为了确保clear( )函数的定义在helloapp()函数之前,需要在helloapp()的末尾添加一行clear()函数的使用。
2. 创建项目
STEP1
在Tutorial中创建一个新的文件夹(文件夹名称为你的应用名),此处为HelloApp;
在HelloApp文件夹下新建文件夹src文件夹;
在src文件夹下创建和应用程序名称相同的 .jl 文件,HelloApp.jl;
HelloApp.jl的内容如下:
STEP2
在HelloApp文件夹下创建 precompile_app.jl 文件,在此文件中你可列出任何你想提前编译的任务
STEP3
在HelloApp文件夹下创建 Project.toml 文件
Project.toml 文件包含name, UUID, authors, version
name 为应用程序的名称
UUID 可通过以下方式产生
3. create_app()
STEP1
首先确保当前工作目录正确
STEP2
在Julia REPL中输入以下代码
julia> using PackageCompiler
julia> create_app("HelloApp","HelloAppCompiled")
creat_app("应用程序的项目名称","应用程序目录名称")
STEP3
执行完成后,将生成一个HelloAppCompiled文件夹,在此文件夹下的bin文件夹中包含一个HelloApp.exe的文件,这就是最终的文件。
4. 获得 .ico 文件(可选)
下载 .ico 文件并放在bin文件夹下
5. 打包应用程序
使用 Inno Setup 打包应用程序,下载网址如下:
STEP 1
在Welcome界面选择"Creat a new script file using the Script Wizard"
Step 2
Step 3
选择应用程序的main可执行文件
Step 3 选择 Add folder
Step 4 选中文件夹的位置,点击Edit,在Destination subfolder下输入bin
Step 5
Step 6
使用快捷键 Ctrl+F 查找所有的{app}并替换为{app}\bin
Step 7 添加代码
[Icons]
Name: "{autoprograms}\{#MyAppName}"; Filename: "{app}\bin\{#MyAppExeName}"
Name: "{autodesktop}\{#MyAppName}"; Filename: "{app}\bin\{#MyAppExeName}";IconFilename:"{app}\bin\图标.ico"; Tasks: desktopicon
Step 8 保存文件至HelloAppCompiled文件夹下
Step 9 进行编译
编译完成后将在HelloAppCompiled问价下生成新的文件夹Output,Output文件夹下的文件夹HelloApp_setup.exe即为应用安装程序。
参考资源:
How to use the app generated by PackageCompiler.jl? - General Usage - JuliaLang
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)