OpenOCD 0.5.0 (x64)の作成 その2
またまた OpenOCD を Windows 64bit ネイティブコードでコンパイルしました。
今回は、Cygwinが x86_64… という 64bitクロスコンパイラを用意したから、これで挑戦してみたのですが…結果的に Cygwin ではコンパイルできませんでした。なので、今回も MSYS+MinGW です。
MSYSで不便を感じるのは、gitが無いと言うことなのです。msysgit という微妙なのはありますが、これらって統一してくれませんかね。元々、Cygwinでコンパイルする予定だったので、gitが必要な部分が終了した後のファイルがPC上にありました。なので、MSYS上で、./bootstrap を実行する前に、中身をいじって、gitをチェックしないように修正してから実行しました。
そのままでは、前回同様に ftd2xx.dll を使ってしまうので、ftd2xx64.dll を使うように ftd2xx.lib を ftd2xx64.dll から逆生成しています。ただ、前回の方法ではなく、チョッと簡単な方法を見つけました。Cygwin上でですが、libを作成する時に必要なdefファイルの生成に gendef というツールが使えます。残念ならが、MSYSの方にはこのツールは無いみたいです。まっ、前回手動でやったことを自動でやってくれるだけなので劇的に楽になった訳では無いです。
作った openocd.exe がちゃんと 64bitオンリーで動いてくれているのかタスクマネージャで調べてOKでした。また、呼び出しているDllが64bit版、かつWindowsネイティブな物なのか調べてみました。
objdump.exe -p ./openocd.exe | grep dll 2>&1 | tee log.txt
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: msvcrt.dll
17e0be 78 __dllonexit
DLL Name: USER32.dll
DLL Name: WS2_32.dll
DLL Name: FTD2XX64.dll
所々に "32" という文字がでてくるが、Windowsの64bit版は32bit版と同じ名前を使用しているので、紛らわしいです。とりあえず、ftd2xx64.dll は使っているみたいです。
今回コンパイルした分を置いておきます。
あくまでも私の環境で動作確認しただけなので、他の環境で動く保証はありません。
ftd2xx64.dll は CDM20814_WHQL_Certified 版を使用しています。
OpenOCD0.5.0-dev-snapshot_20110616.zip
今回は、Cygwinが x86_64… という 64bitクロスコンパイラを用意したから、これで挑戦してみたのですが…結果的に Cygwin ではコンパイルできませんでした。なので、今回も MSYS+MinGW です。
MSYSで不便を感じるのは、gitが無いと言うことなのです。msysgit という微妙なのはありますが、これらって統一してくれませんかね。元々、Cygwinでコンパイルする予定だったので、gitが必要な部分が終了した後のファイルがPC上にありました。なので、MSYS上で、./bootstrap を実行する前に、中身をいじって、gitをチェックしないように修正してから実行しました。
そのままでは、前回同様に ftd2xx.dll を使ってしまうので、ftd2xx64.dll を使うように ftd2xx.lib を ftd2xx64.dll から逆生成しています。ただ、前回の方法ではなく、チョッと簡単な方法を見つけました。Cygwin上でですが、libを作成する時に必要なdefファイルの生成に gendef というツールが使えます。残念ならが、MSYSの方にはこのツールは無いみたいです。まっ、前回手動でやったことを自動でやってくれるだけなので劇的に楽になった訳では無いです。
作った openocd.exe がちゃんと 64bitオンリーで動いてくれているのかタスクマネージャで調べてOKでした。また、呼び出しているDllが64bit版、かつWindowsネイティブな物なのか調べてみました。
objdump.exe -p ./openocd.exe | grep dll 2>&1 | tee log.txt
DLL Name: KERNEL32.dll
DLL Name: msvcrt.dll
DLL Name: msvcrt.dll
17e0be 78 __dllonexit
DLL Name: USER32.dll
DLL Name: WS2_32.dll
DLL Name: FTD2XX64.dll
所々に "32" という文字がでてくるが、Windowsの64bit版は32bit版と同じ名前を使用しているので、紛らわしいです。とりあえず、ftd2xx64.dll は使っているみたいです。
今回コンパイルした分を置いておきます。
あくまでも私の環境で動作確認しただけなので、他の環境で動く保証はありません。
ftd2xx64.dll は CDM20814_WHQL_Certified 版を使用しています。
OpenOCD0.5.0-dev-snapshot_20110616.zip
スポンサーサイト