Skip to content
This repository has been archived by the owner on Aug 16, 2023. It is now read-only.

Relocatablility with PackageCompiler on Windows #206

Open
MichaelHatherly opened this issue Nov 10, 2021 · 3 comments
Open

Relocatablility with PackageCompiler on Windows #206

MichaelHatherly opened this issue Nov 10, 2021 · 3 comments

Comments

@MichaelHatherly
Copy link

When relocating a binary build with PackageCompiler we're hitting the following error due to the prefix_path path not being writable (presumably?) caused by the use of @__DIR__ in

global_prefix = Prefix(joinpath(@__DIR__, "..", "global_prefix"))
.

PS C:\Users\non admin\AppData\Local\Pumas-v2.0.0-1\Julia-1.6.3\bin> pumas.exe
fatal: error thrown and no exception handler available.
InitError(mod=:BinaryProvider, error=Base.IOError(msg="mkdir("C:\\Users\\julia"; mode=0o777): permission denied (EACCES)", code=-4092))
uv_error at .\libuv.jl:97 [inlined]
#mkdir#7 at .\file.jl:179
mkdir##kw at .\file.jl:172 [inlined]
#mkpath#8 at .\file.jl:230
mkpath##kw at .\file.jl:225
#mkpath#8 at .\file.jl:228
mkpath##kw at .\file.jl:225
#mkpath#8 at .\file.jl:228
mkpath##kw at .\file.jl:225
#mkpath#8 at .\file.jl:228
mkpath##kw at .\file.jl:225
#mkpath#8 at .\file.jl:228
mkpath##kw at .\file.jl:225
#mkpath#8 at .\file.jl:228
mkpath at .\file.jl:225 [inlined]
Prefix at C:\Users\julia\.julia\packages\BinaryProvider\U2dKK\src\Prefix.jl:82 [inlined]
__init__ at C:\Users\julia\.julia\packages\BinaryProvider\U2dKK\src\BinaryProvider.jl:25
jfptr___init___172992.clone_1 at C:\Users\non admin\AppData\Local\Pumas-v2.0.0-1\Julia-1.6.3\lib\julia\sys.dll (unknown line)
jl_apply at /cygdrive/c/buildbot/worker/package_win64/build/src\julia.h:1703 [inlined]
jl_module_run_initializer at /cygdrive/c/buildbot/worker/package_win64/build/src\toplevel.c:72
_julia_init at /cygdrive/c/buildbot/worker/package_win64/build/src\init.c:794
repl_entrypoint at /cygdrive/c/buildbot/worker/package_win64/build/src\jlapi.c:696
mainCRTStartup at /cygdrive/c/buildbot/worker/package_win64/build/cli\loader_exe.c:51
BaseThreadInitThunk at C:\WINDOWS\System32\KERNEL32.DLL (unknown line)
RtlUserThreadStart at C:\WINDOWS\SYSTEM32\ntdll.dll (unknown line)
PS C:\Users\non admin\AppData\Local\Pumas-v2.0.0-1\Julia-1.6.3\bin>

Possible solution may be to use @get_scratch!("global_prefix") in place of joinpath(@__DIR__, "..", "global_prefix"), though I'm not 100% sure on whether there'd be non-obvious implications to doing that.

@guilhermebodin
Copy link

I am having the same problem

@guilhermebodin
Copy link

After a small chat with @MichaelHatherly the workaround to this issue was to set include_transitive_dependencies=false in PackageCompiler

@mcmcdani
Copy link

Thanks for posting the solution here, this was causing me a ton of problems.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants