GNU/Linux >> Belajar Linux >  >> Linux

ValueError:_type_ 'v' tidak didukung kesalahan setelah menginstal PyReadline

Ini kemungkinan besar tidak akan membantu siapa pun di tahun 2020 atau lebih, tetapi tetap saja saya ingin merekamnya di sini untuk anak cucu.

Saya mengalami ValueError: _type_ 'v' not supported yang sama traceback dengan penginstalan Python 2.7.16 di lingkungan kluster HPC, mencoba menginstal pdbpp, yang bergantung pada fancycompleter, yang bergantung pada pyreadline, yang mengimpor ctypes.wintypes dan terpengaruh oleh masalah inti Python ini dari tahun 2012.

Memang benar ctypes.wintypes tidak boleh diimpor pada platform non-Windows (Cygwin, MSYS2, dan Git Bash secara teknis bukan Windows, karena mereka akan memiliki nyata Pustaka GNU Readline dan tidak memerlukan shim Python murni).

Namun jika itu adalah diimpor pada platform non-Windows, karena masalah yang disebutkan di atas, ctypes.wintypes melempar ValueError bukannya ImportError , yang berarti bahwa try tipikal /except yang mengharapkan untuk menangkap ImportError hanya akan meledak karena pengecualian yang tidak tertangani.

Fancycompleter Pdbpp, atau lebih tepatnya pyreadline, entah bagaimana menjadi korban dari ini. Saya bingung tentang siapa yang harus disalahkan, karena setup.py fancycompleter tidak seharusnya membawa pyreadline sebagai ketergantungan kecuali di Windows, tapi entah bagaimana ada di sistem Linux saya. Dan jika itu ada di sana, fancycompleter mencoba mengimpornya.

Yang bisa saya pikirkan adalah saya mungkin memiliki fancycompleter lama di cache pip saya dengan kesalahan ketik di setup.py yang menarik pyreadline padahal seharusnya tidak, karena dulu meraih ketergantungan itu, dari waktu ke waktu.

Apa yang akhirnya menyelesaikan situasi ini bagi saya adalah pip uninstall pyreadline , lalu pip install -U --ignore-installed --no-cache-dir fancycompleter untuk mendapatkan versi "segar" dari fancycompleter yang tidak membawa ketergantungan pyreadline yang tidak perlu.


Seperti yang dinyatakan di situs mereka, PyReadline perpustakaan Digunakan untuk Windows .

Melihat baris terakhir pelacakan tumpukan Anda:

import ctypes.wintypes as wintypes
File "/usr/local/lib/python2.7/ctypes/wintypes.py", line 23, in <module>
class VARIANT_BOOL(_SimpleCData):
ValueError: _type_ 'v' not supported

Ia mencoba mengimpor tipe data khusus windows dari ctypes yang jelas tidak mungkin karena Anda tidak menjalankan Windows.


Linux
  1. Kesalahan Instalasi Python - Maaf:UnicodeError:lolos tidak didukung tidak dapat memuat modul unicodedata [Terpecahkan]

  2. Grub Tidak Dapat Menemukan Windows 7 Setelah Menginstal Raid 0?

  3. Unity Tidak Memuat Setelah Menginstal Driver Proprietary Nvidia?

  1. Apa yang harus dilakukan setelah menginstal Arch Linux?

  2. kesalahan ldconfig:bukan tautan simbolik

  3. Redis - linux / Kesalahan saat Menginstal redis di linux:`cc:perintah tidak ditemukan`

  1. perintah yum-config-manager tidak ditemukan [Perbaiki]

  2. c_rehash :Perintah tidak ditemukan kesalahan – Solusi

  3. setelah menginstal monit ketika saya melakukan monit status myproc saya mendapatkan kesalahan saat menghubungkan ke daemon monit