4

これは私の最初の投稿ですので、何か間違ったことをした場合はご容赦ください。

私はこれに数日間苦労してきましたが、ついに譲歩して助けを求めることにしました。簡単に言えば、mingwを使用してWindowsでlibnoise(1.0.0)をコンパイルしたいと思います。ただし、オンラインで入手できる情報が不足しているようです。

Webサイトからソースファイルをダウンロードし、INSTALLテキストファイル内の指示に従って、コマンド「CXXFLAGS ='-O3 -fomit-frame-pointer'make」(mingWシェルから実行)を実行する必要があることを示しています。 。

この操作からの出力はリンクで見つけることができます(長さのために出力を投稿するのではなくリンクしました)。CXXFLAGSまたはfomit-frame-pointerフラグを省略した場合、またはmingw32-makeまたはmake allコマンドを使用した場合、出力はあまり変化しません。

次のような不足しているファイルについて不平を言っているようです

Makefile:56:../src/latlon.d:そのようなファイルまたはディレクトリはありません

記載されているディレクトリに存在することは確認できますが。それはまた何か他のものについて不平を言っています

c:/mingw/bin/../lib/gcc/mingw32/4.7.0/../../../libmingw32.a(main.o):main.c:(.tex t.startup + 0xa7 ):/ _WinMain@16' collect2.exe: error: ld returned 1 exit status make[1]: *** [libnoise.so.0.3] Error 1 make[1]: Leaving directory c / users / gibbons / desktop / libnoisesrc-1.0.0 / noise /srcへの未定義の参照'make:* [src]エラー2

これらの問題に対処する方法がわかりません。グーグル検索は、1つのブログ投稿以外にはあまり表示されませんでした。また、「ライブラリ名の名前を変更して適切なDLL拡張子を付けることで意味がわからないため、これも実際には役に立ちませんでした。すべて置換すれば問題ありません。」

どんな助けやアドバイスもいただければ幸いです、私は本当に行き詰まっています!:-/

乾杯

追加情報:私はWindows 7、64ビットを実行しており、(考えて)mingW4.7.0を使用しています。

4

1 に答える 1

3
  1. 心配しないでくださいNo such file or directory。これは正常です。説明については、の下部を参照してくださいsrc/Makefile
  2. ターゲットを使用しないでくださいclean。私はそれから回復することができませんでした。
  3. .soファイルをビルドするためのすべての指示を削除します。これらはLinuxファイルであり、mingwでビルドすることはできません。すべてのsを開き、次の行を除く、Makefileを含む行をコメントアウトします。.so

    libnoise: libnoise.so libnoise.a libnoise.la
    all: libnoise.a libnoise.la libnoise.so.0.3

    上記の行では、。を含む単語のみを削除して.soください。.soこれにより、ターゲットの構築が妨げられます。

で静的ライブラリを見つけますsrc/.libs/libnoise.a

作成者がVisualStudioを使用してDLLを構築するため、DLLの構築は少し難しくなります。dllをビルドするためのmakefileターゲットはありません。win32ディレクトリ内のファイルを処理し、そこからライブラリを作成するには、さらに数行準備する必要があります。

于 2012-11-08T07:31:09.637 に答える