Skip to content

During installation: No module named 'encodings' #600

@LukasvdWiel

Description

@LukasvdWiel

Dear more experienced user of Julia,

I work on a cluster where one of the users wants to run Julia software that uses the PyCall en PyPlot packages.
We have Python 3.12.4, with MatPlotLib.

I have Julia 1.11.1, and try to follow the documentation on PyPlot's github page to install it. However, I fail to do so, on the eventual error:

Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

There appears to be no Python module called 'encodings', according to pip search

My complete error message is:

julia> Pkg.add("PyPlot")
[a lot of depenced that actually do work]
Precompiling project...
  ✗ PyPlot
  15 dependencies successfully precompiled in 13 seconds. 22 already precompiled.
  1 dependency errored.
  For a report of the errors see `julia> err`. To retry use `pkg> precompile`

julia> err
PkgPrecompileError: The following 1 direct dependency failed to precompile:

PyPlot 

Failed to precompile PyPlot [d330b81b-6aea-500a-939a-2ce795aea3ee] to "/eejit/home/lukas/.julia/compiled/v1.11/PyPlot/jl_dBQBnk".
Python path configuration:
  PYTHONHOME = '/trinity/opt/apps/development/dev2024/install:/trinity/opt/apps/development/dev2024/install'
  PYTHONPATH = (not set)
  program name = '/trinity/opt/apps/development/dev2024/install/bin/python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/trinity/opt/apps/development/dev2024/install/bin/python3'
  sys.base_prefix = '/trinity/opt/apps/development/dev2024/install'
  sys.base_exec_prefix = '/trinity/opt/apps/development/dev2024/install'
  sys.platlibdir = 'lib64'
  sys.executable = '/trinity/opt/apps/development/dev2024/install/bin/python3'
  sys.prefix = '/trinity/opt/apps/development/dev2024/install'
  sys.exec_prefix = '/trinity/opt/apps/development/dev2024/install'
  sys.path = [
    '/trinity/opt/apps/development/dev2024/install/lib64/python39.zip',
    '/trinity/opt/apps/development/dev2024/install/lib64/python3.9',
    '/trinity/opt/apps/development/dev2024/install/lib64/python3.9/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
ModuleNotFoundError: No module named 'encodings'

Current thread 0x00001555552d10c0 (most recent call first):
<no Python frame

Is this 'encodings' module something I should install outside of the package management system and link to with PYTHONPATH, or so?

Does anybody know what is going wrong / what I am doing wrong?

Thanks a lot!

Lukas

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