国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

MSYS2 嵌入Python發(fā)生報(bào)錯(cuò) No module named encodings,沒有名為“encodings”的模塊

問題詳情

我正在嘗試在我的 C++ dll 庫中使用嵌入式 python。 該庫是使用 GCC 編譯器、CMake 和 Ninja 在 MSYS2 中構(gòu)建和編譯的。 Python 3.10 也使用 pacman 安裝在 MSYS2 上。 Windows 10 env 在路徑中包含 C:\msys64\mingw64\bin (python 也位于此處)。 Python 不安裝在 Windows 上,僅安裝在 MSYS2 上。

cmake_minimum_required(VERSION 3.26)
project(python_test)

set(CMAKE_CXX_STANDARD 17)

find_package(Python REQUIRED Development)
add_executable(python_test main.cpp)
target_link_libraries(python_test PRIVATE Python::Python)

簡(jiǎn)單測(cè)試代碼:

int main() {
    Py_Initialize();
    PyRun_SimpleString("from time import time,ctime\n"
                       "import numpy as np\n"
                       "print('Today is', ctime(time()))\n");
    if (Py_FinalizeEx() < 0)
        exit(120);
    return 0;
}

當(dāng)我運(yùn)行此代碼時(shí),我收到此錯(cuò)誤:

Could not find platform independent libraries <prefix>
Could not find platform dependent libraries <exec_prefix>
Consider setting $PYTHONHOME to <prefix>[:<exec_prefix>]
Python path configuration:
  PYTHONHOME = (not set)
  PYTHONPATH = (not set)
  program name = 'python3'
  isolated = 0
  environment = 1
  user site = 1
  import site = 1
  sys._base_executable = 'C:\\Users\\someUsername\\CLionProjects\\python_test\\cmake-build-debug\\python_test.exe'
  sys.base_prefix = 'D:\\a\\msys64\\mingw64'
  sys.base_exec_prefix = 'D:\\a\\msys64\\mingw64'
  sys.platlibdir = 'lib'
  sys.executable = 'C:\\Users\\someUsername\\CLionProjects\\python_test\\cmake-build-debug\\python_test.exe'
  sys.prefix = 'D:\\a\\msys64\\mingw64'
  sys.exec_prefix = 'D:\\a\\msys64\\mingw64'
  sys.path = [
    'D:\\a\\msys64\\mingw64\\lib\\python310.zip',
    'D:\\a\\msys64\\mingw64\\lib\\python3.10',
    'D:\\a\\msys64\\mingw64\\lib\\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 0x00004564 (most recent call first):
  <no Python frame>

但是 python 命令在 MSYS2/MinGW 控制臺(tái)和 Windows cmd 中都可以工作。 當(dāng)我在 Windows 10 環(huán)境中將 PYTHONHOME 指定為 C:\msys64\mingw64\bin 時(shí),我在 Clion 中再次遇到相同的錯(cuò)誤,現(xiàn)在在 Windows 命令行中也是如此。 如何解決這個(gè)問題?

解決方法

比較簡(jiǎn)單,我設(shè)置 PYTHONHOME=C:\msys64\mingw64\bin 和更重要的 PYTHONPATH=C:\msys64\mingw64\lib\python3.10;C:\msys64\mingw64\lib\python3.10\site-packages;C:\ msys64\mingw64\lib\lib-dynload 

就把這個(gè)問題解決了


文章來源地址http://www.zghlxwxcb.cn/article/391.html

到此這篇關(guān)于MSYS2 嵌入Python發(fā)生報(bào)錯(cuò) No module named encodings,沒有名為“encodings”的模塊的文章就介紹到這了,更多相關(guān)內(nèi)容可以在右上角搜索或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

原文地址:http://www.zghlxwxcb.cn/article/391.html

如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)聯(lián)系站長(zhǎng)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python3之No module named ‘encodings‘問題(二十)

    Python3之No module named ‘encodings‘問題(二十)

    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 \\\' ? python2.x是沒有encodings模塊的。 ? python3.x才開始引入該模塊。 ? 奇怪的是我使用python3運(yùn)行的程序,但是還是找不到\\\' encodings \\\'模塊!

    2024年02月05日
    瀏覽(22)
  • Python 報(bào)錯(cuò) ModuleNotFoundError: No module named ‘numpy‘

    Python 報(bào)錯(cuò) ModuleNotFoundError: No module named ‘numpy‘

    1.創(chuàng)建新的工程,編譯后提示錯(cuò)誤:“ModuleNotFoundError: No module named \\\'numpy\\\'” 2.打開dos窗口,輸入:pip list 確認(rèn)已安裝numpy,如下圖: 解決方案一: ?打開PyCharm軟件:File-Settings-Project-Python Interpreter-Add?Interpreter-Add Local Interpreter-Virtualenv Enviroment - Inherit global site-packages-OK - ? 解決方

    2024年02月11日
    瀏覽(32)
  • Python報(bào)錯(cuò)ModuleNotFoundError: No module named ‘psutil‘

    Python報(bào)錯(cuò)ModuleNotFoundError: No module named ‘psutil‘

    python運(yùn)行時(shí),因?yàn)榇a里引入了某些組件庫,但是本地沒有,便會(huì)報(bào)錯(cuò)ModuleNotFoundError: No module named \\\'XXX\\\',如下圖: 此圖是沒有導(dǎo)入psutil庫。 解決:在python安裝目錄下的 Scripts 目錄下進(jìn)入cmd黑窗口,運(yùn)行命令 pip install psutil 安裝。 如果是內(nèi)網(wǎng)連通公網(wǎng)倉(cāng)庫不方便,則通過如下

    2024年02月16日
    瀏覽(27)
  • python鏈接mysql報(bào)錯(cuò):No module named MySQLdb

    python鏈接mysql報(bào)錯(cuò):No module named MySQLdb

    嘗試使用python鏈接mysql,把數(shù)據(jù)進(jìn)行插入的時(shí)候,有報(bào)錯(cuò): 然后: pip install mysqlclient 報(bào)錯(cuò): https://codeantenna.com/a/n3yCa0VDpB,下載對(duì)應(yīng)python版本 直接引入pymysql,雖然第一次引入,但是缺少初始化信息,需要整體引用 添加初始化后,就不會(huì)報(bào)錯(cuò)缺少mysqldb module了。

    2024年02月04日
    瀏覽(19)
  • python安裝wordcloud包報(bào)錯(cuò):No module named ‘wordcloud‘

    直接在cmd使用pip install wordcloud進(jìn)行安裝后,在jupyter notebook中導(dǎo)入wordcloud包會(huì)報(bào)錯(cuò) 發(fā)現(xiàn)是因?yàn)闆]有安裝在anaconda的路徑里 解決方法:打開anaconda prompt進(jìn)行pip install wordcloud,安裝完成后可以在jupyter環(huán)境中成功導(dǎo)入 去年這時(shí)候安過一次wordcloud包,當(dāng)時(shí)好像也有這個(gè)問題,沒有及時(shí)

    2024年02月11日
    瀏覽(36)
  • Python 報(bào)錯(cuò) no module named torch 的解決方案

    在 Python 中使用 PyTorch 時(shí),經(jīng)常會(huì)碰到 no module named torch 的錯(cuò)誤。本文總結(jié)了此錯(cuò)誤出現(xiàn)的主要原因及對(duì)應(yīng)的解決方法。 想在 Python 中調(diào)用 PyTorch,首先得安裝它??梢栽诮K端運(yùn)行: 來安裝 PyTorch 和相關(guān)庫。 如果安裝了 PyTorch 的舊版本,但代碼中需要較新版本的 API,也會(huì)出現(xiàn)此錯(cuò)誤

    2024年02月08日
    瀏覽(30)
  • Python報(bào)錯(cuò):ModuleNotFoundError: No module named ‘xxx‘,如何解決?

    Python報(bào)錯(cuò):ModuleNotFoundError: No module named \\\'xxx\\\',如何解決? 在Python開發(fā)中,經(jīng)常會(huì)遇到報(bào)錯(cuò)信息\\\"ModuleNotFoundError: No module named \\\'xxx\\\'\\\"的問題。這個(gè)錯(cuò)誤通常是由于沒有正確安裝或?qū)胨璧哪K導(dǎo)致的。本文將探討這個(gè)問題的解決方法,并提供一些實(shí)際的代碼示例。 為了說明這個(gè)

    2024年02月05日
    瀏覽(95)
  • python中導(dǎo)入logru模塊 報(bào)錯(cuò) No module named loguru

    python中導(dǎo)入logru模塊 報(bào)錯(cuò) No module named loguru

    1、導(dǎo)入日志模塊異常報(bào)錯(cuò) 報(bào)錯(cuò)信息: from loguru import logger E ? ModuleNotFoundError: No module named ?loguru 2、解決方案:安裝logru 方案1:pycham編輯器 -- 文件 -- 設(shè)置? 該方式有時(shí)候安裝不成功 方案2:打開終端 pip install logru 該方式比較慢,偶爾也會(huì)出錯(cuò) 方案3:打開終端 pip install log

    2024年02月11日
    瀏覽(23)
  • 完美解決:Python3.10報(bào)錯(cuò) No module named ‘_ssl‘

    完美解決:Python3.10報(bào)錯(cuò) No module named ‘_ssl‘

    報(bào)錯(cuò)詳情: 操作系統(tǒng)為centos7,python版本為3.10.7,openssl版本為3.0.5,運(yùn)行g(shù)unicorn報(bào)No module named \\\'_ssl\\\' 原因就是python3.10和openssl3.0.5的版本配置文件跟以前有點(diǎn)區(qū)別,python3.10的版本OPENSSL不再是/usr/local/ssl 的默認(rèn)路徑,變成了/path/to/openssl/directory,已經(jīng)提示得很明白了讓你在這里寫入

    2024年02月12日
    瀏覽(24)
  • 【已解決】Python打包文件執(zhí)行報(bào)錯(cuò):ModuleNotFoundError: No module named ‘pymssql‘

    【已解決】Python打包文件執(zhí)行報(bào)錯(cuò):ModuleNotFoundError: No module named ‘pymssql‘

    今天打包一個(gè) tkinter + pymssql 的項(xiàng)目的時(shí)候,打包過程很順利,但是打開軟件的時(shí)候,報(bào)錯(cuò) ModuleNotFoundError: No module named \\\'pymssql\\\' 如下圖: 查了好多資料才知道:打包程序無法判斷 pymssql 動(dòng)態(tài)調(diào)用,其中的 _mssql 方法是動(dòng)態(tài)調(diào)用的,就是用才調(diào)用,不會(huì)一開始就調(diào)用,于是打包程

    2024年02月07日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包