1
$\begingroup$

I'm a noob when it comes to compiling. I've followed the instructions for compiling Blender on OpenSuse Linux.

https://wiki.blender.org/wiki/Building_Blender/Linux/OpenSUSE

I downloaded the sources. I downloaded the libraries.

But when I follow the Update and Build instructions

cd /home/myprofile/bin/blender-git/blender/
make update

I'm given the following error:

python3 ./build_files/utils/make_update.py
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = '/usr/local/lib/python:/usr/lib64/python/'
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = '/usr/bin/python3'
  sys.base_prefix = '/usr'
  sys.base_exec_prefix = '/usr'
  sys.executable = '/usr/bin/python3'
  sys.prefix = '/usr'
  sys.exec_prefix = '/usr'
  sys.path = [
    '/usr/local/lib/python',
    '/usr/lib64/python/',
    '/usr/lib/python38.zip',
    '/usr/lib64/python3.8',
    '/usr/lib64/python3.8/lib-dynload',
  ]
Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding
Python runtime state: core initialized
  File "/usr/lib64/python/encodings/__init__.py", line 123
    raise CodecRegistryError,\
                            ^
SyntaxError: invalid syntax

Current thread 0x00007f9baaa00740 (most recent call first):
<no Python frame>
make: *** [GNUmakefile:504: update] Error 1
$\endgroup$
3
  • $\begingroup$ @robert-gützkow thanks for cleaning up the post, but but do you have an answer to my question? $\endgroup$
    – leoplaw
    Commented Oct 12, 2020 at 10:57
  • $\begingroup$ This is likely related to your PYTHONPATH, possibly due to one of the paths referencing Python 2.7 libs. I would try to use unset PYTHONPATH to temporarily clear the environment variable and check if this resolves the issue. $\endgroup$ Commented Oct 12, 2020 at 11:46
  • $\begingroup$ @robert-gützkow thank you! That was the solution to the issue. Blender compiled successfully. $\endgroup$
    – leoplaw
    Commented Oct 12, 2020 at 23:39

1 Answer 1

0
$\begingroup$

The issue is caused by the PYTHONPATH. It seems that /usr/lib64/python/ points to the libraries of Python 2.7, which results in the aforementioned error. The PYTHONPATH environment variable can be temporarily removed for the current terminal with the command unset PYTHONPATH after which you should be able to run make update successfully.

$\endgroup$
4
  • $\begingroup$ A proper fix would be to either adjust the PYTHONPATH so you're able to run Python 3.x or set up and activate a virtual environment for Python 3.x. $\endgroup$ Commented Oct 13, 2020 at 9:43
  • $\begingroup$ I'll have to research that. $\endgroup$
    – leoplaw
    Commented Oct 13, 2020 at 14:55
  • $\begingroup$ would using update-alternatives suffice? With this I can switch between the three versions of Python on my machine. $\endgroup$
    – leoplaw
    Commented Mar 21, 2021 at 19:36
  • $\begingroup$ @leoplaw Since I can't tell with certainty what the original source of the issue was that resulted in the improperly set path, I don't know if this will solve the problem. I can only suggest you to try it on your system. $\endgroup$ Commented Mar 21, 2021 at 19:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .