4

OS X 10.5 のデフォルトの Python インストールは、FAT 32 ビット (Intel および PPC) クライアントを使用する 2.5.1 です。django を実行するために apache と mysql をセットアップしたいと考えています。過去に、このインストールに合わせて 32 ビット モードで Apache と MySQL を実行しました (動作させるために Apache から 64 ビットのものを取り除きました)。

Python を 64 ビットにアップグレードしたいと考えています。ソースからコンパイルすることに完全に満足していますが、1 つの注意点があります。デフォルトのインストールの配置方法を一致させるにはどうすればよいですか? 特に、/Library/Python/2.5/コンパイルすると、フレームワークの上部に埋め込まれているサイトパッケージではなく、サイトパッケージに関して。

4

5 に答える 5

1

ヒポサウルス、

複数のバージョンの Python を同時にインストールすることができます。2 つのバージョンを並行してインストールすると、問題が解決し、上記の Jason Baker によって提示された問題を回避するのに役立ちます。

最も簡単な方法であり、私が推奨する方法は、すべてのソフトウェアを個別にインストールするMacPortsを使用することです。たとえば、デフォルトでは、すべてが /opt/local にインストールされます

もう 1 つの方法は、単純にソースをダウンロードして、指定したプレフィックスでコンパイルすることです。このメソッドは PATH 環境変数を変更しないことに注意してください。そのため、Python 実行可能ファイルへの完全修飾パスを毎回入力することを避けたい場合は、自分で変更する必要があります。

./configure --prefix=/usr/local/python64
make
sudo make install

次に、mod_python のPythonInterpreterディレクティブを使用して、Apache インストールを新しいバージョンに向けるだけです。

于 2008-08-28T07:16:15.437 に答える
1

個人的には、問題が発生するまでは気にしません。*Nix システムにインストールされているデフォルトの python をいじると、必要以上にトラブルが発生する可能性があります。個人的な経験から言えば、python が nix の世界で何をしたかは、問題が発生するまで真に理解することはできません。

2 番目の python インストールを追加することもできますが、それは IMO の価値よりも多くの問題を引き起こします。

ですから、最初に最適な質問は、なぜ 64 ビット バージョンの python を使用したいのかということになると思います。

于 2008-08-28T00:09:56.910 に答える
1

あなたの質問を完全に理解しているかどうかはわかりませんが、単純に 64 ビット バージョンをビルドしてインストールし、シンボリック リンクを作成して /Library/Python/2.5 以下が新しくビルドされたバージョンの Python を指すようにすることはできませんか?

于 2008-08-27T16:30:06.393 に答える
0

短い答えは、できるからです。OPが言ったことを拡張した長い答えは、Apacheおよびmysql / postgresqlとの互換性を高めることです。それらはすべて 64 ビットです (apache は、ppc、ppc64 x86、x86、および x86_64 を含むファット バイナリであり、その他は単純な 64 ビットです)。Mysqldb と mod_python は、すべて同じアーキテクチャを実行していない限りコンパイルされません。はい、それらすべてを 32 ビットで実行できます (過去にもありました) が、これは 1 つのプログラムをコンパイルするよりもはるかに多くの作業です。

編集:インストーラーにそのことをさせ、これを反映するようにPATHを更新するだけで十分だと確信しました。

于 2008-08-28T00:33:52.297 に答える
0

基本的に、はい。そのようにできるかどうかはわかりませんでした(現在のバージョンではそのようにはできません)。ただし、python インストール スクリプトを使用する場合、ディレクトリとファイルを配置する場所を指定するオプション (私が見つけることができます) はありません (例: --prefix)。冗長なファイルでマシンを「汚染」するのを避けるために、python 関連ファイルの現在のレイアウトを一致させることを望んでいました。

于 2008-08-27T23:38:27.767 に答える