Skip to content

Modules using PyCall don't compile in Windows #468

@el-oso

Description

@el-oso

After struggling a bit with PackageCompiler I encountered the following error while trying to compile a module that use PyCall on Windows.

FATAL ERROR: Symbol "ccall_PyImport_ImportModule_23406"not found

After some digging I tried this on my Linux machine:

julia> versioninfo()
Julia Version 1.5.3
Commit 788b2c77c1 (2020-11-09 13:37 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: AMD Ryzen 7 1700 Eight-Core Processor
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, znver1)
Environment:
  JULIA_NUM_THREADS = 16

julia> using PackageCompiler
[ Info: Precompiling PackageCompiler [9b87118b-4619-50d2-8e1e-99f35a4d4d9d]

julia> create_sysimage(:PyPlot, sysimage_path="/tmp/sys_pyplot.so")
Downloading artifact: Cbc
Downloading artifact: Clp
Downloading artifact: Dierckx
[ Info: PackageCompiler: creating system image object file, this might take a while...

shell> ls /tmp/sys_pyplot.so
/tmp/sys_pyplot.so

As expected ...

In Windows though ...

Julia Version 1.5.3
Commit 788b2c77c1 (2020-11-09 13:37 UTC)
Platform Info:
  OS: Windows (x86_64-w64-mingw32)
  CPU: Intel(R) Core(TM) i5-8350U CPU @ 1.70GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-9.0.1 (ORCJIT, skylake)
Environment:
  JULIA_EDITOR = "C:\Users\jvieyras\AppData\Local\Programs\Microsoft VS Code\Code.exe"
  JULIA_NUM_THREADS = 4

julia> using PackageCompiler

julia> create_sysimage(:PyPlot, sysimage_path="sys_pyplot.dll")
[ Info: PackageCompiler: creating system image object file, this might take a while...
FATAL ERROR: Symbol "ccall_PyImport_ImportModule_25649"not found
signal (22): SIGABRT
...

I will append the full error message separately.

pyplot_compile_error.txt

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