回答編集履歴
2
z
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
例えば、Windows で動く exe 形式のバイナリを Ubuntu に持っていっても動きません。OS が違うからです。
|
6
6
|
そのため、pip でインスールする際にその環境に適合したビルド済みのバイナリが存在すればそれをダウンロードしてくるだけですが、存在しない場合は wheel でソースをダウンロードしてビルドを試みます。
|
7
7
|
|
8
|
-
その際に「wheel が存在しない」「C/C++ のビルド環境がない」「C/C++ のコードが参照しているライブラリがない」などの原因でビルドに失敗すると、pip でのインスールに失敗するということになります。失敗した場合は大抵はコンパイルエラーのメッセージ
|
8
|
+
その際に「wheel が存在しない」「C/C++ のビルド環境がない」「C/C++ のコードが参照しているライブラリがない」などの原因でビルドに失敗すると、pip でのインスールに失敗するということになります。失敗した場合は大抵はコンパイルエラーのメッセージが出力されているはずです。
|
9
9
|
|
10
|
-
venv で仮想化できるのは Python の環境だけです。
|
10
|
+
venv で仮想化できるのは Python の環境だけです。OS の差異は吸収できません。
|
11
|
-
OS の差異
|
11
|
+
OS の差異も含めて動作環境の再現性を担保したい場合は、Docker を使うとよいでしょう。
|
1
s
answer
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
例えば、Windows で動く exe 形式のバイナリを Ubuntu に持っていっても動きません。OS が違うからです。
|
6
6
|
そのため、pip でインスールする際にその環境に適合したビルド済みのバイナリが存在すればそれをダウンロードしてくるだけですが、存在しない場合は wheel でソースをダウンロードしてビルドを試みます。
|
7
7
|
|
8
|
-
その際に「wheel が存在しない」「C/C++ のビルド環境がない」「C/C++ のコードが参照しているライブラリがない」などの原因でビルドに失敗すると、pip でのインスールに失敗するということになります。
|
8
|
+
その際に「wheel が存在しない」「C/C++ のビルド環境がない」「C/C++ のコードが参照しているライブラリがない」などの原因でビルドに失敗すると、pip でのインスールに失敗するということになります。失敗した場合は大抵はコンパイルエラーのメッセージなどが出力されているはずです。
|
9
9
|
|
10
10
|
venv で仮想化できるのは Python の環境だけです。
|
11
11
|
OS の差異なども含めて動作環境の再現性を担保したい場合は、Docker を使うとよいでしょう。
|