Failed To precompile Makie


#1

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


#2

Try running,

]build Makie

#3

I tried, I have another error message


and after that trying again using Makie give the same errors


#4

If you are on Win10, you can enable developer mode to be able to create symlinks without admin rights.
See e.g., https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development
or for background information
https://blogs.windows.com/buildingapps/2016/12/02/symlinks-windows-10/
At least this should solve the given error message.


#5

Thanks a lot it works very well!!


#6

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


#7

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


#8

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.


#9

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

ENV["BINARYPROVIDER_COPYDEREF"] = "true"

#10

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


#11

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. :roll_eyes:

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 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 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.


#12

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

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.

#13

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]