Title: ModuleNotFoundError: No module named 'encodings' at PythonEngine.Initialize() in Linux · pythonnet/pythonnet · Discussion #2217 · GitHub
Open Graph Title: ModuleNotFoundError: No module named 'encodings' at PythonEngine.Initialize() in Linux · pythonnet/pythonnet · Discussion #2217
X Title: ModuleNotFoundError: No module named 'encodings' at PythonEngine.Initialize() in Linux · pythonnet/pythonnet · Discussion #2217
Description: ModuleNotFoundError: No module named 'encodings' at PythonEngine.Initialize() in Linux
Open Graph Description: Environment Pythonnet version:2.0.21 Python version: 3.10.11 Operating System: Ubuntu 2210 .NET Runtime: 6.0.412 Details ModuleNotFoundError: No module named 'encodings' in linux This error occurs ...
X Description: Environment Pythonnet version:2.0.21 Python version: 3.10.11 Operating System: Ubuntu 2210 .NET Runtime: 6.0.412 Details ModuleNotFoundError: No module named 'encodings' in linux This error...
Opengraph URL: https://github.com/pythonnet/pythonnet/discussions/2217
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"QAPage","mainEntity":{"@type":"Question","name":"ModuleNotFoundError: No module named 'encodings' at PythonEngine.Initialize() in Linux","text":"Environment
\n\n- Pythonnet version:2.0.21
\n- Python version: 3.10.11
\n- Operating System: Ubuntu 2210
\n- .NET Runtime: 6.0.412
\n
\nDetails
\n\n- ModuleNotFoundError: No module named 'encodings' in linux
\n
\nThis error occurs in virtualenv and conda, and has not been tested in other ways. (Initialized successfully in windows.)
\n\n- error message:
\n
\n/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages\nPython path configuration:\n PYTHONHOME = '/opt/miniconda3/envs/py310/bin/python'\n PYTHONPATH = (not set)\n program name = 'python3'\n isolated = 0\n environment = 1\n user site = 1\n import site = 1\n sys._base_executable = '/opt/miniconda3/envs/py310/bin/python3'\n sys.base_prefix = ''\n sys.base_exec_prefix = ''\n sys.platlibdir = 'lib'\n sys.executable = '/opt/miniconda3/envs/py310/bin/python3'\n sys.prefix = ''\n sys.exec_prefix = ''\n sys.path = [\n '/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages',\n ]\nFatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding\nPython runtime state: core initialized\nModuleNotFoundError: No module named 'encodings'\n\nCurrent thread 0x00007f348e961740 (most recent call first):\n <no Python frame>\n
\n\n- export PYTHONPATH & run
\n
\n\nexport PYTHONPATH=\"/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages\"
\n
\n\n- result:
\n
\n/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages\nPython path configuration:\n PYTHONHOME = '/opt/miniconda3/envs/py310/bin/python'\n PYTHONPATH = '/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages'\n program name = 'python3'\n isolated = 0\n environment = 1\n user site = 1\n import site = 1\n sys._base_executable = '/opt/miniconda3/envs/py310/bin/python3'\n sys.base_prefix = ''\n sys.base_exec_prefix = ''\n sys.platlibdir = 'lib'\n sys.executable = '/opt/miniconda3/envs/py310/bin/python3'\n sys.prefix = ''\n sys.exec_prefix = ''\n sys.path = [\n '/opt/miniconda3/envs/py310/lib/python310.zip;/opt/miniconda3/envs/py310/lib/python3.10;/opt/miniconda3/envs/py310/lib/python3.10/lib-dynload;/opt/miniconda3/envs/py310/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages',\n ]\nFatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding\nPython runtime state: core initialized\nModuleNotFoundError: No module named 'encodings'\n\nCurrent thread 0x00007fe65d843740 (most recent call first):\n <no Python frame>\n
\n string winPath = @\"D:\\tools\\python310\";\n string linuxPath = \"/opt/miniconda3/envs/py310\";\n \n \n if(RuntimeInformation.IsOSPlatform(OSPlatform.Windows))\n {\n string pathToVirtualEnv = winPath;\n Runtime.PythonDLL = Path.Combine(pathToVirtualEnv, \"python310.dll\");\n PythonEngine.PythonHome = Path.Combine(pathToVirtualEnv, \"python.exe\");\n PythonEngine.PythonPath = @$\"{pathToVirtualEnv}\\Lib\\site-packages;{pathToVirtualEnv}\\Lib;{pathToVirtualEnv}\\DLLs\";\n\n }\n else if(RuntimeInformation.IsOSPlatform(OSPlatform.Linux))\n {\n //Virtualenv\n var pathToVirtualEnv = \"/opt/miniconda3/envs/py310\";\n\n Runtime.PythonDLL = $\"{pathToVirtualEnv}/lib/libpython3.10.so\";\n \n var path = Environment.GetEnvironmentVariable(\"PATH\").TrimEnd(';');\n path = string.IsNullOrEmpty(path) ? pathToVirtualEnv : path + \";\" + pathToVirtualEnv;\n Environment.SetEnvironmentVariable(\"PATH\", path, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PATH\", pathToVirtualEnv, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PYTHONHOME\", pathToVirtualEnv, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PYTHONPATH\", $\"{pathToVirtualEnv}/lib/python310.zip;{pathToVirtualEnv}/lib/python3.10;{pathToVirtualEnv}/lib/python3.10/lib-dynload;{pathToVirtualEnv}/lib/python3.10/site-packages;~/.local/lib/python3.10/site-packages\", EnvironmentVariableTarget.Process);\n\n var pythonpath = Environment.GetEnvironmentVariable(\"PYTHONPATH\", EnvironmentVariableTarget.Process);;\n Console.WriteLine(pythonpath);\n PythonEngine.PythonHome = $\"{pathToVirtualEnv}/bin/python\";\n PythonEngine.PythonPath = pythonpath;\n\n \n\n } else {\n Console.WriteLine(\"This OS is not support\");\n return;\n }\n\n PythonEngine.Initialize();
","upvoteCount":1,"answerCount":3,"acceptedAnswer":{"@type":"Answer","text":"Oh my god!
\nIt's a mistake.
\nWe must use \":\" instead of \";\"
\n string winPath = @\"D:\\tools\\python310\";\n string linuxPath = \"/opt/miniconda3/envs/py310\";\n\n\n if (RuntimeInformation.IsOSPlatform(OSPlatform.Windows))\n {\n string pathToVirtualEnv = winPath;\n Runtime.PythonDLL = Path.Combine(pathToVirtualEnv, \"python310.dll\");\n PythonEngine.PythonHome = Path.Combine(pathToVirtualEnv, \"python.exe\");\n PythonEngine.PythonPath = @$\"{pathToVirtualEnv}\\Lib\\site-packages;{pathToVirtualEnv}\\Lib;{pathToVirtualEnv}\\DLLs\";\n\n }\n else if (RuntimeInformation.IsOSPlatform(OSPlatform.Linux))\n {\n //Virtualenv\n var pathToVirtualEnv = \"/opt/miniconda3/envs/py310\";\n\n Runtime.PythonDLL = $\"{pathToVirtualEnv}/lib/libpython3.10.so\";\n\n var path = Environment.GetEnvironmentVariable(\"PATH\").TrimEnd(':');\n path = string.IsNullOrEmpty(path) ? pathToVirtualEnv : path + \":\" + pathToVirtualEnv;\n Environment.SetEnvironmentVariable(\"PATH\", path, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PATH\", pathToVirtualEnv, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PYTHONHOME\", pathToVirtualEnv, EnvironmentVariableTarget.Process);\n Environment.SetEnvironmentVariable(\"PYTHONPATH\", $\"{pathToVirtualEnv}/lib/python3.10:{pathToVirtualEnv}/lib/python3.10/lib-dynload:{pathToVirtualEnv}/lib/python3.10/site-packages:~/.local/lib/python3.10/site-packages\", EnvironmentVariableTarget.Process);\n // {pathToVirtualEnv}/lib/python310.zip;\n var pythonpath = Environment.GetEnvironmentVariable(\"PYTHONPATH\", EnvironmentVariableTarget.Process); ;\n Console.WriteLine(pythonpath);\n PythonEngine.PythonHome = $\"{pathToVirtualEnv}/bin/python\";\n //PythonEngine.PythonHome = $\"{pathToVirtualEnv}\";\n PythonEngine.PythonPath = pythonpath;\n\n\n\n }\n else\n {\n Console.WriteLine(\"This OS is not support\");\n return;\n }\n\n PythonEngine.Initialize();\n
","upvoteCount":2,"url":"https://github.com/pythonnet/pythonnet/discussions/2217#discussioncomment-6789448"}}}
| route-pattern | /_view_fragments/Voltron::DiscussionsFragmentsController/show/:user_id/:repository/:discussion_number/discussion_layout(.:format) |
| route-controller | voltron_discussions_fragments |
| route-action | discussion_layout |
| fetch-nonce | v2:dd41302e-e29b-cb87-34f9-d52f6fb2c2f6 |
| current-catalog-service-hash | 9f0abe34da433c9b6db74bffa2466494a717b579a96b30a5d252e5090baea7be |
| request-id | D498:27873:D777CE:12D7479:6970BFEF |
| html-safe-nonce | e3843659b7b417849f5981264d8255d09bffddd6e8b6736dcbc8d7d17bdb31b5 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJENDk4OjI3ODczOkQ3NzdDRToxMkQ3NDc5OjY5NzBCRkVGIiwidmlzaXRvcl9pZCI6IjIyOTkyMjcxODUwOTM4NTMxNjciLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 8812ba360998088e1f7d85f3ec6c8976b5c035ee152375215e262e415b016b27 |
| hovercard-subject-tag | discussion:5502284 |
| github-keyboard-shortcuts | repository,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/Voltron::DiscussionsFragmentsController/show/pythonnet/pythonnet/2217/discussion_layout |
| twitter:image | https://opengraph.githubassets.com/fe666c136f2d0b305487cadc4837815af821582b68b54d9c9d79dd050e269abc/pythonnet/pythonnet/discussions/2217 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/fe666c136f2d0b305487cadc4837815af821582b68b54d9c9d79dd050e269abc/pythonnet/pythonnet/discussions/2217 |
| og:image:alt | Environment Pythonnet version:2.0.21 Python version: 3.10.11 Operating System: Ubuntu 2210 .NET Runtime: 6.0.412 Details ModuleNotFoundError: No module named 'encodings' in linux This error occurs ... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | bb43a7bc61aba1b91c3c5cf8e7d00342e1e77a0cfe55a141222dbd7f9782d26f |
| turbo-cache-control | no-preview |
| go-import | github.com/pythonnet/pythonnet git https://github.com/pythonnet/pythonnet.git |
| octolytics-dimension-user_id | 6050430 |
| octolytics-dimension-user_login | pythonnet |
| octolytics-dimension-repository_id | 14748123 |
| octolytics-dimension-repository_nwo | pythonnet/pythonnet |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 14748123 |
| octolytics-dimension-repository_network_root_nwo | pythonnet/pythonnet |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 34817b01ad7cdf8b2beb35ea7b0e2a7609004eff |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width