Numpy: Mengimpor numpy c-extensions gagal.

Dibuat pada 5 Jan 2020  ·  6Komentar  ·  Sumber: numpy/numpy

Menggunakan Pyinstaller untuk membuat executable, Dapatkan Mengimpor numpy c-extensions gagal.

Contoh kode reproduksi:

F:\PCS\Documents\Python>type numpytest.py
# -*- coding: utf-8 -*-

import numpy as np
x = np.array([1,2,3])
print(x)
##works fine in python...
python numpytest.py
[1 2 3]



md5-8471f6cd73214bb860e1c999d342677f



## build with pyinstaller, no errors
pyinstaller -F numpytest.py 



md5-751b1907e5a8c901151abcce9d8fb135



>numpytest.exe
Traceback (most recent call last):
  File "f:\python38\lib\site-packages\numpy\core\__init__.py", line 24, in <module>
    from . import multiarray
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\multiarray.py", line 14, in <module>
    from . import overrides
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\overrides.py", line 7, in <module>
    from numpy.core._multiarray_umath import (
ImportError: DLL load failed while importing _multiarray_umath: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "F:\PCS\Documents\Python\numpytest.py", line 9, in <module>
    import numpy as np
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\__init__.py", line 142, in <module>
    from . import core
  File "f:\python38\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 627, in exec_module
    exec(bytecode, module.__dict__)
  File "f:\python38\lib\site-packages\numpy\core\__init__.py", line 54, in <module>
    raise ImportError(msg)
ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy c-extensions failed.
- Try uninstalling and reinstalling numpy.
- If you have already done that, then:
  1. Check that you expected to use Python3.8 from "F:\PCS\Documents\Python\dist\numpytest.exe",
     and that you have no directories in your PATH or PYTHONPATH that can
     interfere with the Python and numpy version "1.18.0" you're trying to use.
  2. If (1) looks fine, you can open a new issue at
     https://github.com/numpy/numpy/issues.  Please include details on:
     - how you installed Python
     - how you installed numpy
     - your operating system
     - whether or not you have multiple versions of Python installed
     - if you built from source, your compiler versions and ideally a build log

- If you're working with a numpy git repository, try `git clean -xdf`
  (removes all files not under version control) and rebuild numpy.

Note: this error has many possible causes, so please don't comment on
an existing issue about this - open a new one instead.

Original error was: DLL load failed while importing _multiarray_umath: The specified module could not be found.

[19036] Failed to execute script numpytest

Tindakan Ambil:

dihapus dan diinstal ulang numpy.

Informasi versi Numpy/Python:

Python 3.8.1
numpy 1.18.0
PyInstaller 3.5


1.18.0 3.8.1 (tag/v3.8.1:1b293b6, 18 Des 2019, 23:11:46) [MSC v.1916 64 bit (AMD64)]

Jalur:
F:Python38Scripts
F: Python38

Komentar yang paling membantu

Oke, saya menyelesaikannya! Ini masalah dengan conda (Anaconda).
numpy harus diinstal ulang dengan pip:
pip install --upgrade --force-reinstall numpy

Semua 6 komentar

sama dengan #14747
Saya menyalin file dan berhasil

Saya mengalami masalah yang sangat mirip. Dapat membuka pertanyaan baru terkait masalah tersebut.

Adakah yang bisa memperbaiki masalah ini saat menggunakan opsi --onefile? Saya dapat menyalin secara manual ketika ini tidak ditambahkan dan membuatnya berfungsi, namun tidak ada tempat untuk menyalinnya setelah saya menggunakan --onefile.

Apakah ada solusi?

Oke, saya menyelesaikannya! Ini masalah dengan conda (Anaconda).
numpy harus diinstal ulang dengan pip:
pip install --upgrade --force-reinstall numpy

Cukup hapus instalan numpy dan instal ulang. Masalah akan terpecahkan.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat

Masalah terkait

marcocaccin picture marcocaccin  ·  4Komentar

amuresan picture amuresan  ·  4Komentar

kevinzhai80 picture kevinzhai80  ·  4Komentar

Foadsf picture Foadsf  ·  3Komentar

astrofrog picture astrofrog  ·  4Komentar