質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

3回答

8030閲覧

pyinstallerでEXEファイルを実行したが、mkl_intel_thread.1.dll エラーのため実行できない

matsutai

総合スコア53

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/07/23 02:48

編集2021/07/25 12:00

conda で pyinstaller をインストールして、
pyinstaller ○○.py --onefile  としてExeファイル化して実行しましたが、

INTEL MKL ERROR:指定されたモジュールが見つかりません。
mkl_intel_thread.1.dll.

と出て実行できません。
分かる方教えていただけないでしょうか?

python 3.8.8
conda version 4.10.3
OS:windows10 64bit
pyInstaller:3.6

よろしくお願いします。

【追記】
mkl のバージョンを 下記に下げたら通ったという記事があったので、下記を実行しましたが、
conda install mkl=2018.0.2
変わらずうまくいなかったので、mklのバージョンをインストールのあと調べましたが、
conda info mkl
では、2021.3.0 から変わっていませんでした。
mklのバージョンの切り替え方 をどうしたらよいのでしょうか?
知っている方いらしたら教えていただけないでしょうか?

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

ベストアンサー

まだやられているかは分かりませんが、同じような症例で解決できたので残しておきます。
mkl_intel_thread.1.dllのファイルがpyinstallerでexe化した際に一緒に入っていないようです。
windowsのanaconda環境下でnumpyをインポートした際にmkl_intel_thread.1.dllの読み込みが開始するのですが、

pyinstaller XX.py --onefile

とした際にmkl_intel_thread.1.dllを入れてくれていなかったようです。

where mkl_intel_thread.1.dll

と入力した時にanacondaの仮想環境下に問題なく入っていれば、使用している仮想環境のライブラリ内のファイルを適当な場所にもってきて

pyinstaller XX.py --onefile --add-data mkl_intel_thread.1.dll;.

で解決すると思います。
--add-data については、FileName;FilePathとなっています。

投稿2021/12/21 02:22

senka

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こちらはご覧になりましたでしょうか?
https://nu-pan.hatenablog.com/entry/2018/10/12/232502

投稿2021/07/24 14:22

odataiki

総合スコア938

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

matsutai

2021/07/25 05:13

回答ありがとうございます。 いただいたURLに載っていた対応はすべて試してみましたがうまくいきませんでした。 私の場合エラー分に mkl_intel_thread.1.dll の 1 が入っていて、ネットでエラーを見る限り 1 が入っている例が見当たりません。このあたりが原因なのでしょうか?
guest

0

5年前の記事ですが、これを試してみてはいかがですか。

Pyinstaller numpy “Intel MKL FATAL ERROR: Cannot load mkl_intel_thread.dll”

投稿2021/07/23 03:07

ppaul

総合スコア24666

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

matsutai

2021/07/23 03:55

回答ありがとうございます。 numpyに関係していそうな雰囲気を感じますが、今回EXEファイルには、numpyは使っておらす、anacondaのためpip経由もなくよくわからなかったです。ネットで検索すると mklのdll ダウンロードサイトみたいのがあるのですが、安全かどうか判断できず、どうしようかという感じです。
ppaul

2021/07/24 14:57

PythonでMKL関連のエラーが出るのは、numpyがMKLを使っている場合です。 https://tech.morikatron.ai/entry/2020/03/27/100000 あたりをお読みください。 自分でnumpyを直接importしていなくても、pandasとかsklearnのようなものをimportしている場合はそれらのパッケージの中でnumpyをimport しています。
matsutai

2021/07/25 05:11

回答ありがとうございます。 今回、私の場合、openxl os glob datetime なのでpandas等は使っていないのでなぜか分かりません。
ppaul

2021/07/25 05:29

openxlはopenpyxlの打ち間違いですか。 openpyxlはその中でnumpuyをimportしています。 以下の場所を見てください。 import openpyxl print(openpyxl.compat.numbers) で表示されるfromの後ろのファイルを表示してみると、9行目あたりに import numpy があるはずです。
matsutai

2021/07/25 10:37

回答ありがとうございます。 ご指摘の通り openpyxl の間違いでした。numpyの情報ありがとうございます。 最初に頂いた5年前の記事に同じエラーで試すべき方法がありそうなのですが、英語で内容が分からないものも多く、苦戦しております。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問