64ビットのOracle10.2も実行している64ビットのItaniumサーバーでWindowsServer2003を実行していますが、Python2.5用のcx_Oracleをインストールしたいと思います。私は以前にWindowsとLinuxの両方でcx_Oracleを何度も使用し、それらのプラットフォームの32ビットバージョンでも以前にコンパイルしましたが、IA64コンパイルを試したことがありません。
http://cx-oracle.sourceforge.net/にあるcx_Oracleのバイナリビルドはいずれも64ビットではなく、実行しようとするとエラーが発生するimport cx_Oracle
ので、コンパイルする必要があると思います。ソース。
実行するpython setup.py build
と、PythonがVisual Studio 2003で構築されており、互換性のあるバイナリを生成できるものが必要であるというエラーが表示されます。私はVisualStudio2005を持っていますが、これはC標準ライブラリの別のバージョンとリンクしているため、そしておそらく他の理由でも、明らかに法案に適合していません。残念ながら、Visual Studio 2003はダウンロードできなくなり、どこで入手できるかわかりません。
だから私はhttp://sourceforge.net/projects/mingw/files/からMinGWをダウンロードしますが、これも32ビット形式でのみ利用可能です。とにかく試してみますが、リンクしているOracle DLLの1つについて、コンパイル中にエラーが発生し、ファイル形式が無効になります。
この時点で、私にはたくさんの選択肢があり、どこに努力すればよいかわかりません。
64ビットのMinGWをhttp://sourceforge.net/projects/mingw-w64/からダウンロードして使用してみることができますが、ソースとしてのみ使用できるように見えるため、コンパイラをコンパイルする必要があります。 VisualStudio2005。
Pythonのx8632ビットビルドを使用してみて、http: //www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.htmlからOracle Instant Client SDKをダウンロードし、それを使用してcx_Oracleをビルドします。おそらく、ORACLE_HOMEをクライアントに設定して、64ビットサーバーDLLに対してリンクを試行しないようにする必要がありますが、これは機能する可能性があります。
Visual Studio 2005を使用してソースからPython自体をコンパイルしてみると、Visual Studio 2005を使用してcx_Oracleをビルドでき、バイナリ互換性の問題を心配する必要がなくなります。Linuxで何度もソースからPythonをコンパイルしましたが、問題はありませんでした。そのため、Windowsでも同じように簡単だと思います。
Visual Studio 2005を適切なDLLに対してリンクさせ、Visual Studio 2003を必要とせずに、その方法で互換性のあるバイナリを生成する方法を理解することができます。直感的には、VisualStudioは古いバージョンのそれ自体と互換性のあるバイナリを生成できるはずです。しかし、私のコンパイラーの経験のほとんどはgccを使用しているので、よくわかりません。
私は自分の努力をどこに向けるべきか本当によくわかりません。誰かが次にどこに行くべきかについて何か提案がありますか?役立つ場合は、受け取った特定のエラーメッセージの一部をコピーして貼り付けることができます。
特に、cx_Oracleを64ビットのItaniumバージョンのWindowsで動作させたことがある人からの連絡をお待ちしています。これを最初に試すことはできません。