2011-07-07 2 views
0

Windowsシステムでクロスコンパイラ(x86-> 64)をビルドしようとしていますが、Windows 64を対象にしていますが、私のソフトウェアは現在オープンソースの依存関係を持っているオープンソースライブラリに依存しています私がコンパイルできる事前ビルドされたバイナリはありません。これは、私が64ビットバージョンを望むなら、私はそれらをコンパイルする必要があることを意味します。私の(x86-> 64)windowsクロスコンパイラのコンパイルに失敗したのはなぜですか?

私はMSYSとmingwをインストールしました。私は最終的に私のソフトウェアで使用するために64ビット形式のライブラリをコンパイルできるようにmingw-w64を追加しています。私はusing these instructionsのような手順にしっかりと従っており、そのページに記載されている順番で、私は現在「GCCコアクロスコンパイラの構築」と題していますが、コンパイルしようとすると行で:

$ ../gcc-4.6.1/configure --target = x86_64の-W64-MINGW32 --enable-ターゲット=すべて& &は-j 6すべて-gccの& &メイクを作ります - j 6 install-gcc

私はoutput pasted hereを取得します。もちろん、私は以前に実行されたコマンドを切り捨て、最後のコマンドはすべてのエラーが表示される前にリストされた最後のコマンドであることに注意してください。また、それが '-j 6'引数によるすべてのエラーの原因であるかどうかはわかりませんが、少なくともそれ以前のものはすべてとなり、が成功しました。

問題は何ですか?どのように修正できますか?

ああ、潜在的な示唆を予期しています。いいえ、cygwinに切り替えることはできません。

編集:、個別here's the output of the configure commandthe output produced by make all-gcc (no -j argument)、およびconfig.logそれらを実行した後にわかりました。注:私はmake cleanをあらかじめ実行していませんでしたが、これは別のエンディングを説明するかもしれませんが、私はこのアップデートを書く時間のためにはしませんでしたが、私は別のコンパイルフォルダを作り、応答を待っている間、以前と同じエラーが表示されるようにきれいにしてください。

編集2:予想通りmake all-gccが再び失敗し、この時間the outputはもう少し、私は願って役立つはずです。

ご協力いただきありがとうございます。

+0

エラーが発生したら、-jオプションを付けずにmakeを実行して、どのコマンドがそれを生成するのかを正確に確認してください。エラーを見ると、アセンブラは認識できない命令にバーコードを張っているように見えるので、ツールチェーンがx64コードを生成する準備ができていない可能性があります。 – eriktous

+0

私はあなたが提案した通りにコンパイルプロセスを開始しました。あなたが言うことは意味をなさないですが、このステップの目的はまさにそれを行うことができるコンパイラをコンパイルすることだと私には思われるので、それはむしろ奇妙です。 – Geoff

答えて

0

config.logは、x86_64-w64-mingw32/binのバイナリをarなどのものに使用することを示しています。これらは内部コンパイラでのみ使用でき、 mingw/binディレクトリ。 mingw-w64-publicメーリングリストで助けを求めることを強くお勧めします。

+0

私は何をすべきかわかりませんあなたが言った最初のことを行いますが、私はメーリングリストにサインアップして電子メールを送りました。あなたの提案をありがとう! – Geoff

関連する問題