Skip to content

Relocatability warnings on dependent packages #357

@jipq6175

Description

@jipq6175

Hi, I am trying to building an app using PackageCompiler.

I have a package that depends on a few other packages, including Plots and PyCall. I encountered the following warnings when create_app

julia> @time create_app("MyPackage", "MyPackageCompiled"; force=true)
┌ Warning: Project has a dependency on Requires.jl, code in `@require` will not be run
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:498
┌ Warning: Plots has a dependency on Requires.jl, code in `@require` will not be run
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:502
┌ Warning: PlotThemes has a dependency on Requires.jl, code in `@require` will not be run
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:502
┌ Warning: Package Plots has a build script, this might indicate that it is not relocatable
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:515
┌ Warning: Package GR has a build script, this might indicate that it is not relocatable
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:515
┌ Warning: Package PyCall has a build script, this might indicate that it is not relocatable
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:515
┌ Warning: Package Conda has a build script, this might indicate that it is not relocatable
└ @ PackageCompiler C:\Users\x\.julia\packages\PackageCompiler\fZ95H\src\PackageCompiler.jl:515
...

The executable was built successfully and can be run on my Windows machine. But it failed to run on the other Windows machine. It's the package relocatability issue. After some googling, I think I have to use Artifacts.toml to work around this issue. I read through the Pkg.jl manual and the blog post (https://julialang.org/blog/2019/11/artifacts/) but still have no idea how to do this exactly. Is there an example for dealing with those "un-relocatable" packages? Or am I missing anything? Thanks

Here is the julia versioninfo()

Julia Version 1.5.0-DEV.270
Commit 66ecd90bd6 (2020-02-13 21:49 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-9.0.1 (ORCJIT, skylake)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions