# Failed To precompile Makie

**URL:** <https://discourse.julialang.org/t/failed-to-precompile-makie/20758>\
**Category:** Internals & Design\
**Created:** [February 13, 2019, 5:09pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758 "2019-02-13T17:09:10Z")\
**Posts on this page:** 13\
**Page:** 1

<div class="post-metadata">

**Author:** ![Erisme](https://avatars.discourse-cdn.com/v4/letter/e/96bed5/32.png) [@Erisme](https://discourse.julialang.org/u/Erisme)\
**Post date:** [February 13, 2019, 5:09pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/1 "2019-02-13T17:09:10Z")

</div>

Hi,

I tried to add Mackie package (normal and master on Julia 1.1) and everytime that I do : using Makie I have error message Failed to precompile Mackie and I can’t use it.

Any help?

Thank you

---

<div class="post-metadata">

**Author:** ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)\
**Post date:** [February 13, 2019, 5:21pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/2 "2019-02-13T17:21:07Z")

</div>

Try running,

```julia
]build Makie

```

---

<div class="post-metadata">

**Author:** ![Erisme](https://avatars.discourse-cdn.com/v4/letter/e/96bed5/32.png) [@Erisme](https://discourse.julialang.org/u/Erisme)\
**Post date:** [February 13, 2019, 5:23pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/3 "2019-02-13T17:23:56Z")

</div>

I tried, I have another error message

 ![image](https://global.discourse-cdn.com/julialang/original/3X/e/4/e467d0eb8139f8cbea13188da8929a875473a839.png)  
and after that trying again using Makie give the same errors  
 ![image](https://global.discourse-cdn.com/julialang/original/3X/4/a/4acb889cb8d31822d313a7d3b04ef16e28580b26.png)

---

<div class="post-metadata">

**Author:** ![Rudi79](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/rudi79/32/3884_2.png) [@Rudi79](https://discourse.julialang.org/u/Rudi79)\
**Post date:** [February 13, 2019, 6:41pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/4 "2019-02-13T18:41:19Z")

</div>

If you are on Win10, you can enable developer mode to be able to create symlinks without admin rights.  
See e.g., [Enable your device for development - Windows apps | Microsoft Docs](https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development)  
or for background information  
[Symlinks in Windows 10! - Windows Developer Blog](https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10/)  
At least this should solve the given error message.

---

<div class="post-metadata">

**Author:** ![Erisme](https://avatars.discourse-cdn.com/v4/letter/e/96bed5/32.png) [@Erisme](https://discourse.julialang.org/u/Erisme)\
**Post date:** [February 13, 2019, 10:05pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/5 "2019-02-13T22:05:23Z")

</div>

Thanks a lot it works very well!!

---

<div class="post-metadata">

**Author:** ![mcarpe](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mcarpe/32/2719_2.png) [@mcarpe](https://discourse.julialang.org/u/mcarpe)\
**Post date:** [February 14, 2019, 11:19am UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/6 "2019-02-14T11:19:22Z")

</div>

I’m having the same problem with ImageMagick. Is there a solution for Windows 7?

---

<div class="post-metadata">

**Author:** ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)\
**Post date:** [February 14, 2019, 11:43am UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/7 "2019-02-14T11:43:36Z")

</div>

starting the console where you build with admin rights should also work!

---

<div class="post-metadata">

**Author:** ![dawbarton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dawbarton/32/215461_2.png) [@dawbarton](https://discourse.julialang.org/u/dawbarton)\
**Post date:** [February 14, 2019, 12:42pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/8 "2019-02-14T12:42:22Z")

</div>

For those of us without admin rights is there any way to make this work? (Even if that requires some manual manipulation.)

Unfortunately getting full admin rights just for this is going to be a non-starter for me. I have so-called elevated user rights which allows me to do most things with admin privileges but it seems that those privileges aren’t propagated through to the build process for some reason.

---

<div class="post-metadata">

**Author:** ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)\
**Post date:** [February 14, 2019, 1:19pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/9 "2019-02-14T13:19:26Z")

</div>

You may, or may not, be able to circumvent this by setting this environment variable:

```julia
ENV["BINARYPROVIDER_COPYDEREF"] = "true"

```

---

<div class="post-metadata">

**Author:** ![sdanisch](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sdanisch/32/1406_2.png) [@sdanisch](https://discourse.julialang.org/u/sdanisch)\
**Post date:** [February 14, 2019, 1:28pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/10 "2019-02-14T13:28:46Z")

</div>

_Sigh_ nope, doesn’t work… I guess the only work around without admin rights is what @Rudi79 pointed out… Or is it, @staticfloat?

---

<div class="post-metadata">

**Author:** ![staticfloat](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/staticfloat/32/34_2.png) [@staticfloat](https://discourse.julialang.org/u/staticfloat)\
**Post date:** [February 14, 2019, 10:16pm UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/11 "2019-02-14T22:16:48Z")

</div>

The copyderef thing only works if the user has the ability to create symlinks within their own temporary directory, which on windows 7, is not enabled by default. 🙄

This can be worked around on the package side by creating tarballs that don’t have symlinks in them at all. I believe the [libpngbuilder release `v1.0.1`](https://github.com/SimonDanisch/LibpngBuilder/releases) has fixed this, so `ImageMagick.jl` probably just needs to upgrade to that version instead of release `v1.0.0`.

You can test this locally by downloading [this file](https://github.com/SimonDanisch/LibpngBuilder/releases/download/v1.0.1/build_libpng.v1.6.31.jl) and saving it to `deps/build_libpng.v1.0.0.jl` (overwriting the file that is already there) within your `ImageMagick.jl` package directory, then re-running the package build.

---

<div class="post-metadata">

**Author:** ![dawbarton](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/dawbarton/32/215461_2.png) [@dawbarton](https://discourse.julialang.org/u/dawbarton)\
**Post date:** [February 15, 2019, 10:33am UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/12 "2019-02-15T10:33:42Z")

</div>

Thanks - it almost worked in that ImageMagick built successfully but when I did `using Makie` again I got

```julia
ERROR: LoadError: LoadError: LoadError: png wasn't build correctly. Please run Pkg.build("ImageMagick")
Stacktrace:
 [1] error(::String) at .\error.jl:33
 [2] top-level scope at none:0
 [3] include at .\boot.jl:326 [inlined]
 [4] include_relative(::Module, ::String) at .\loading.jl:1038
 [5] include at .\sysimg.jl:29 [inlined]
 [6] include(::String) at C:\Julia\Packages\packages\ImageMagick\d5KBL\src\ImageMagick.jl:1
 [7] top-level scope at C:\Julia\Packages\packages\ImageMagick\d5KBL\src\libmagickwand.jl:23
 [8] include at .\boot.jl:326 [inlined]
 [9] include_relative(::Module, ::String) at .\loading.jl:1038
 [10] include at .\sysimg.jl:29 [inlined]
 [11] include(::String) at C:\Julia\Packages\packages\ImageMagick\d5KBL\src\ImageMagick.jl:1
 [12] top-level scope at none:0
 [13] include at .\boot.jl:326 [inlined]
 [14] include_relative(::Module, ::String) at .\loading.jl:1038
 [15] include(::Module, ::String) at .\sysimg.jl:29
 [16] top-level scope at none:2
 [17] eval at .\boot.jl:328 [inlined]
 [18] eval(::Expr) at .\client.jl:404
 [19] top-level scope at .\none:3
in expression starting at C:\Julia\Packages\packages\ImageMagick\d5KBL\deps\deps.jl:12
in expression starting at C:\Julia\Packages\packages\ImageMagick\d5KBL\src\libmagickwand.jl:22
in expression starting at C:\Julia\Packages\packages\ImageMagick\d5KBL\src\ImageMagick.jl:18
ERROR: LoadError: Failed to precompile ImageMagick [6218d12a-5da1-5696-b52f-db25d2ecc6d1] to C:\Julia\Packages\compiled\v1.1\ImageMagick\0LbNX.ji.

```

---

<div class="post-metadata">

**Author:** ![mcarpe](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mcarpe/32/2719_2.png) [@mcarpe](https://discourse.julialang.org/u/mcarpe)\
**Post date:** [February 15, 2019, 10:35am UTC](https://discourse.julialang.org/t/failed-to-precompile-makie/20758/13 "2019-02-15T10:35:04Z")

</div>

Thanks! It worked _almost worked_ for me.

btw… I didn’t realise I had to rename the linked file to `build_libpng.v1.0.0.jl`. After I did that, it worked _almost worked_…

[ok, actually I’ve spoken too soon, as @dawbarton is saying, I get the same error when I’m `using Makie`]
