Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

build_executable fails if snoopfile and builddir are on different drives #291

Closed
PGS62 opened this issue Nov 18, 2019 · 1 comment
Closed

Comments

@PGS62
Copy link

PGS62 commented Nov 18, 2019

I'm experimenting with build_executable. I see that this works correctly:

julia> build_executable("d:/philip/source/script/julia/jsource/hello.jl", "hello", 
builddir = "d:/temp/builddir",snoopfile = "d:/philip/source/script/julia/jsource/snoop.jl")
Julia program file:
  "d:\philip\source\script\julia\jsource\hello.jl"
C program file:
  "C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\examples\program.c"
Build directory:
  "d:\temp\builddir"
The snoop file is being executed!
[ Info: used 12 out of 12 precompile statements
All done

but if I instead use a builddir on the c: drive, I get an error because of a failed attempt to open a file at c:\d:\philip\source\script\julia\jsource\hello.jl. Is there perhaps an error in the logic to determine the "fully qualified location" of julia_program?

julia> build_executable("d:/philip/source/script/julia/jsource/hello.jl", "hello",
 builddir = "c:/temp/builddir",snoopfile = "d:/philip/source/script/julia/jsource/snoop.jl")
Julia program file:
  "d:\philip\source\script\julia\jsource\hello.jl"
C program file:
  "C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\examples\program.c"
Build directory:
  "c:\temp\builddir"
The snoop file is being executed!
[ Info: used 12 out of 12 precompile statements
ERROR: LoadError: LoadError: could not open file c:\d:\philip\source\script\julia\jsource\hello.jl
Stacktrace:
 [1] include at .\boot.jl:328 [inlined]
 [2] include_relative(::Module, ::String) at .\loading.jl:1094
 [3] include(::Module, ::String) at .\Base.jl:31
 [4] top-level scope at c:\temp\builddir\julia_main.jl:1
 [5] include at .\boot.jl:328 [inlined]
 [6] include_relative(::Module, ::String) at .\loading.jl:1094
 [7] include at .\Base.jl:31 [inlined]
 [8] include(::String) at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\sysimg\run_julia_code.jl:8
 [9] top-level scope at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\sysimg\run_julia_code.jl:10
 [10] include at .\boot.jl:328 [inlined]
 [11] include_relative(::Module, ::String) at .\loading.jl:1094
 [12] include(::Module, ::String) at .\Base.jl:31
 [13] exec_options(::Base.JLOptions) at .\client.jl:295
 [14] _start() at .\client.jl:464
in expression starting at c:\temp\builddir\julia_main.jl:1
in expression starting at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\sysimg\run_julia_code.jl:10
ERROR: failed process: Process(`'C:\Users\philip\AppData\Local\Julia-1.2.0\bin\julia.exe' --output-o=hello.a --track-allocation=none --code-coverage=none --history-file=yes --inline=yes --math-mode=ieee '--project=C:\Users\Philip\.julia\environments\v1.2' --compile=yes --track-allocation=none --sysimage-native-code=yes '--sysimage=C:\Users\philip\AppData\Local\Julia-1.2.0\lib\julia\sys.dll' --compiled-modules=yes --optimize=2 'C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\sysimg\run_julia_code.jl'`, ProcessExited(1)) [1]

Stacktrace:
 [1] pipeline_error at .\process.jl:813 [inlined]
 [2] #run#536(::Bool, ::typeof(run), ::Cmd) at .\process.jl:728
 [3] run at .\process.jl:726 [inlined]
 [4] #run_julia#1 at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\src\compiler_flags.jl:225 [inlined]
 [5] #run_julia at .\none:0 [inlined]
 [6] (::getfield(PackageCompiler, Symbol("##13#14")){Base.Iterators.Pairs{Symbol,Nothing,NTuple{14,Symbol},NamedTuple{(:sysimage, :startup_file, :handle_signals, :sysimage_native_code, :compiled_modules, :depwarn, :warn_overwrite, :compile, :cpu_target, :optimize, :debug_level, :inline, :check_bounds, :math_mode),NTuple{14,Nothing}}},String})() at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\src\static_julia.jl:263
 [7] cd(::getfield(PackageCompiler, Symbol("##13#14")){Base.Iterators.Pairs{Symbol,Nothing,NTuple{14,Symbol},NamedTuple{(:sysimage, :startup_file, :handle_signals, :sysimage_native_code, :compiled_modules, :depwarn, :warn_overwrite, :compile, :cpu_target, :optimize, :debug_level, :inline, :check_bounds, :math_mode),NTuple{14,Nothing}}},String}, ::String) at .\file.jl:85
 [8] #build_object#12(::Base.Iterators.Pairs{Symbol,Nothing,NTuple{14,Symbol},NamedTuple{(:sysimage, :startup_file, :handle_signals, :sysimage_native_code, :compiled_modules, :depwarn, :warn_overwrite, :compile, :cpu_target, :optimize, :debug_level, :inline, :check_bounds, :math_mode),NTuple{14,Nothing}}}, ::typeof(PackageCompiler.build_object), ::String, ::String, ::String, ::Bool) at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\src\static_julia.jl:262
 [9] #build_object at .\none:0 [inlined]
 [10] build_object(::String, ::String, ::String, ::Bool, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing) at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\src\static_julia.jl:241
 [11] #static_julia#5(::Nothing, ::Bool, ::Bool, ::String, ::String, ::String, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool, ::Bool, ::Nothing, ::Bool, ::Bool, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::Nothing, ::typeof(static_julia), ::String) at C:\Users\Philip\.julia\packages\PackageCompiler\CJQcs\src\static_julia.jl:162
 [12] #build_executable at .\none:0 [inlined] (repeats 2 times)
 [13] top-level scope at REPL[35]:1

julia> versioninfo()
Julia Version 1.2.0
Commit c6da87ff4b (2019-08-20 00:03 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-6.0.1 (ORCJIT, skylake)
Environment:
  JULIA_NUM_THREADS = 8
  JULIA_EDITOR = "C:\Users\Philip\AppData\Local\Programs\Microsoft VS Code\Code.exe"
@KristofferC
Copy link
Member

I think this should be fixed, please comment/open a new issue if that is not the case.

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

No branches or pull requests

2 participants