[解決済み] Py_Initializeが失敗する - ファイルシステムのコーデックをロードできない
質問
組み込みのPython 3.2インタプリタを使用する簡単なc++のテストプロジェクトをまとめようとしています。プロジェクトは正常にビルドされますが、Py_Initialize は致命的なエラーを発生させます。
Fatal Python error: Py_Initialize: unable to load the file system codec
LookupError: no codec search functions registered: can't find encoding
最小限のコード
#include <Python.h>
int main (int, char**)
{
Py_Initialize ();
Py_Finalize ();
return 0;
}
OSは32bitのVistaです。
使用したpythonのバージョンはpython 3.2 debug buildで、VC++ 10を使用してソースからビルドしました。
同じビルドの python_d.exe ファイルは問題なく実行されます。
どなたか、この問題と解決方法を説明していただけませんか?私自身のgoogle-fuは私を失敗させる。
EDIT 1
Pythonのソースコードを調べてみたところ、エラーにあるように、コーデック検索関数が登録されていないことがわかりました。どちらも
codec_register
と
PyCodec_Register
はその通りです。ただ、コードのどこにもこれらの関数が呼び出されていないだけなのです。
これらの関数がいつ、どこから呼ばれるべきなのか、まだ分からないので、これが何を意味するのかよく分かりません。このエラーを発生させるコードは、私の他の Python ビルド (3.1.3) のソースからは完全に失われています。
編集2
以下、自分の質問に答えています。
どのように解決するのですか?
そこで、何らかの理由で python dll がエンコーディングモジュールを見つけることに失敗しました。python.exeの実行ファイルは、期待される相対パスを持っているので、明らかにそれを見つけることができます。検索パスを変更するとうまくいきます。
なぜ、このようなことになったのか?わからないが、少なくとも動作はする。私のタイプミスを強く疑いますが、奇妙なバグはたいていそれが原因のようです。
関連
-
[解決済み】coutはstdのメンバではない
-
[解決済み】クラステンプレートの引数リストがない
-
[解決済み】システムが指定されたファイルを見つけられませんでした。
-
[解決済み】浮動小数点数の乱数生成
-
[解決済み】C++ - 適切なデフォルトコンストラクタがない [重複]。
-
[解決済み】Eclipse IDEでC++エラー「nullptrはこのスコープで宣言されていません」が発生する件
-
[解決済み] なぜテンプレートはヘッダーファイルでしか実装できないのですか?
-
[解決済み] ローカルディレクトリからrequirements.txtファイルに従ってpipを使用してパッケージをインストールするにはどうすればよいですか?
-
[解決済み] os/path 形式に関係なく、パスからファイル名を抽出します。
-
[解決済み] 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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Visual Studio 2015で「非標準の構文; '&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み】Visual Studio 2015で「非標準の構文。'&'を使用してメンバーへのポインターを作成します」エラー
-
[解決済み] エラーが発生する。ISO C++は型を持たない宣言を禁じています。
-
[解決済み】C++コンパイルタイムエラー:数値定数の前に期待される識別子
-
[解決済み】抽象クラス型の無効なnew-expression
-
[解決済み】エラー。switchステートメントでcaseラベルにジャンプする
-
[解決済み】Visual Studio 2013および2015でC++コンパイラーエラーC2280「削除された関数を参照しようとした」が発生する
-
[解決済み】ファイルから整数を読み込んで配列に格納する C++ 【クローズド
-
[解決済み】浮動小数点数の乱数生成
-
[解決済み】C++ - 適切なデフォルトコンストラクタがない [重複]。