# How to make app using PackageCompiler fully offline

**URL:** <https://discourse.julialang.org/t/how-to-make-app-using-packagecompiler-fully-offline/95482>\
**Category:** General Usage\
**Tags:** package-compiler\
**Created:** [March 3, 2023, 5:54am UTC](https://discourse.julialang.org/t/how-to-make-app-using-packagecompiler-fully-offline/95482 "2023-03-03T05:54:11Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![minetest2048](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/minetest2048/32/45961_2.png) [@minetest2048](https://discourse.julialang.org/u/minetest2048)\
**Post date:** [March 3, 2023, 5:54am UTC](https://discourse.julialang.org/t/how-to-make-app-using-packagecompiler-fully-offline/95482/1 "2023-03-03T05:54:11Z")

</div>

When I run an app using PackageCompiler it somehow downloaded MKL at first startup:

```julia
byakuya@ifrit-hpc ~/a/bin> ./acq_prod 
  Downloaded artifact: MKL
  Downloaded artifact: MKL

```

My project.toml is this:

```julia
name = "acq_prod"
uuid = "d35d9be9-77fe-43a0-b67c-91e860872321"
version = "0.1.0"

[deps]
Acquisition = "d4bbf60b-102b-5ffb-8f97-a7ea5817e69f"
Diana = "070d9d8b-17a7-5814-83fa-42438ba5c6e0"
FLoops = "cc61a311-1640-44b5-9fba-1b764f453329"
GNSSSignals = "52c80523-2a4e-5c38-8979-05588f836870"
JLD2 = "033835bb-8acc-5ee8-8aae-3f567f8a3819"
JSON = "682c06a0-de6a-54ab-a142-c8b1cf79cde6"
StaticArrays = "90137ffa-7385-5640-81b9-e52037218182"
StructArrays = "09ab397b-f2b6-538f-b94a-2f83cf4a842a"
Unitful = "1986cc42-f94f-5a68-af5c-568840ba703d"

```

No MKL, but somehow it download MKL at startup. Is there a way to stop it?  
My goal is to run this on a offline Raspberry Pi

---

<div class="post-metadata">

**Author:** ![dilumaluthge](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dilumaluthge/32/29283_2.png) [@dilumaluthge](https://discourse.julialang.org/u/dilumaluthge)\
**Post date:** [March 3, 2023, 7:29am UTC](https://discourse.julialang.org/t/how-to-make-app-using-packagecompiler-fully-offline/95482/2 "2023-03-03T07:29:17Z")

</div>

When you build the app using `PackageCompiler.create_app(...)`, you probably want to pass the `include_lazy_artifacts = true` keyword argument.

[https://julialang.github.io/PackageCompiler.jl/stable/refs.html#PackageCompiler.create\_app](https://julialang.github.io/PackageCompiler.jl/stable/refs.html#PackageCompiler.create_app)

---

<div class="post-metadata">

**Author:** ![ellocco](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ellocco/32/31331_2.png) [@ellocco](https://discourse.julialang.org/u/ellocco)\
**Post date:** [March 3, 2023, 9:35am UTC](https://discourse.julialang.org/t/how-to-make-app-using-packagecompiler-fully-offline/95482/3 "2023-03-03T09:35:44Z")

</div>

> [@dilumaluthge](#):
>
> include\_lazy\_artifacts = true

In which situations does it make sense to use the current default value for `include_lazy_artifacts=false`?  
I wonder, if it makes sense to change the default value for this parameter inside the package `ProjectCompiler.jl` to `true`.  
Even [the example project, included in `ProjectCompiler.jl`](https://github.com/JuliaLang/PackageCompiler.jl/tree/master/examples/MyApp)  
does not compile on my machine without this option set to `true`.
