プログラムの事とか

お約束ですが「掲載内容は私個人の見解です」

これでいいの?AzureのApp ServiceでPythonが動いちゃったんだけど

puni-o.hatenablog.com

の続きです。

not a valid Win32 applicationはやっぱり32bitと64bitが混在原因だよなー、と思ったのでダメ元で実験しました。

32bit開発環境を準備

OSをHyper-Vに入れます

f:id:puni-o:20160407141625p:plain

ちょうどIPが出たばかりだったので後で遊ぶつもりでこれを入れました

Visual Studioを入れます

f:id:puni-o:20160407141735p:plain

Python 2.7を入れます

f:id:puni-o:20160407141759p:plain

前回と同様にDjangoのアプリを作ってVirtual Environmentを準備します

f:id:puni-o:20160407141834p:plain

numpyを入れると実フォルダプロジェクト名\env\Lib\site-packagesnumpynumpy-1.11.0.dist-infoができるのでコピーして元の開発環境(Win10 x64)のプロジェクトに上書きコピーします。 (numpyフォルダだけでいいのかな?)

f:id:puni-o:20160407142058p:plain

再挑戦

ローカルで実行してみます

f:id:puni-o:20160407142130p:plain

今度はこっちで同様(文字化けしているけど多分同じ・・・)のエラーが出ました。いい感じです。

Azureにデプロイすると・・・

f:id:puni-o:20160407142216p:plain

うごいたーー!!

やはり64bitのバイナリを読んでエラーを出していたようです。

分からない

前回いろいろ試したときに64bitバイナリー説は私のなかで浮上してました。そこでAzureのここ

f:id:puni-o:20160407142726p:plain

を64ビットにしたんですが特に変化なかったんですよねぇ・・・。(今は無料枠に戻したので選択できませんが)

私と同じことで悩んでいる人がいるかどうかわかりませんが、どうしても動かない人はこんな感じの事も試してみてはいかがでしょうか。

分からない、おしまい!