[解決済み] PythonのWindows版パッケージをvirtualenvsにインストールすることはできますか?
2022-08-02 09:48:04
質問
Virtualenvは素晴らしいです。異なるプロジェクトの依存関係を共通の山に投げ込まないように、いくつもの異なるPythonのインストールを維持することができます。
しかし、Windowsに.exeインストーラとしてパッケージされたパッケージをインストールしたい場合、どのようにしてvirtualenvにインストールするように指示できますか? たとえば、私はpycuda-0.94rc.win32-py2.6.exeを持っています。 これを実行すると、レジストリを調べて、インストールするPython26を1つだけ見つけ、それは私の仮想環境がベースにしている共通のものです。
どのようにしたら、仮想環境にインストールするように指示できますか?
どのように解決するのですか?
結局、あるスクリプト ( http://effbot.org/zone/python-register.htm ) を適用して、Python のインストールをレジストリに登録することにしました。 私は Python を は Python をレジストリに登録し、Windows インストーラーを実行し、その後レジストリを元に戻します。
# -*- encoding: utf-8 -*-
#
# script to register Python 2.0 or later for use with win32all
# and other extensions that require Python registry settings
#
# Adapted by Ned Batchelder from a script
# written by Joakim Löw for Secret Labs AB / PythonWare
#
# source:
# http://www.pythonware.com/products/works/articles/regpy20.htm
import sys
from _winreg import *
# tweak as necessary
version = sys.version[:3]
installpath = sys.prefix
regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
installpath, installpath, installpath
)
def RegisterPy():
try:
reg = OpenKey(HKEY_LOCAL_MACHINE, regpath)
except EnvironmentError:
try:
reg = CreateKey(HKEY_LOCAL_MACHINE, regpath)
except Exception, e:
print "*** Unable to register: %s" % e
return
SetValue(reg, installkey, REG_SZ, installpath)
SetValue(reg, pythonkey, REG_SZ, pythonpath)
CloseKey(reg)
print "--- Python %s at %s is now registered!" % (version, installpath)
if __name__ == "__main__":
RegisterPy()
このスクリプトを登録したいPythonを指定して実行すると、レジストリに登録されます。Windows 7とVistaでは、Administrator権限が必要なことに注意してください。
関連
-
[解決済み] Windowsにpipをインストールするにはどうしたらいいですか?
-
[解決済み] pipでPythonの全パッケージをアップグレードする方法
-
[解決済み] Pythonの辞書からキーを削除するにはどうしたらいいですか?
-
[解決済み] Pythonスクリプトのプロファイリングはどのように行うのですか?
-
[解決済み] ローカルディレクトリからrequirements.txtファイルに従ってpipを使用してパッケージをインストールするにはどうすればよいですか?
-
[解決済み] Pythonのsite-packagesディレクトリの場所を見つけるにはどうしたらいいですか?
-
[解決済み】ネストされたディレクトリを安全に作成するには?
-
[解決済み】WindowsでTCPまたはUDPポートをリッスンしているプロセスを見つけるにはどうすればよいですか?
-
[解決済み] Spyderを仮想環境で動作させるには?
-
[解決済み] Pythonでリストが空かどうかをチェックする方法は?重複
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonです。未束縛のメソッドを束縛する?
-
[解決済み] Pythonの構文に新しいステートメントを追加することはできますか?
-
[解決済み] 辞書のキーと値を交換するにはどうすればよいですか?
-
[解決済み] dict を txt ファイルに書き、それを読み取る?
-
[解決済み] 値で列挙名を取得する [重複]。
-
[解決済み] Ctrl-CでPythonスクリプトを終了できない
-
[解決済み] Pythonの検索パスを他のソースに展開する
-
[解決済み] Pythonの辞書にあるスレッドセーフについて
-
[解決済み] Python の sorted() はどのようなアルゴリズムを使っているのですか?重複
-
[解決済み] Pythonでリストが空かどうかをチェックする方法は?重複