私は自分のプロジェクトでライブラリを作成し、一般的に複数のファイルで作業する方法を理解しようとしています。ldが.soファイルを探していない
しかし、ldは "lhello"が見つかりませんでした(libhelloは私のカスタムライブラリです)。しかし、-l:libhello.soを使うとうまくコンパイルされます。
私はその後、--verboseオプションを使用してLDを走り、ここで私が得たものです:
[...]のlib/libhello.dll.aを開くために
試みがへ
の試みに失敗しましたオープンのlib/hello.dll.aはlibに/ libhello.aを開くために
試みに失敗した
を失敗したのlib/hello.libを開くためにの試みに失敗しました
のlib/libhello.dllを開くしようとする試みは、LIB/hello.dllを開くために
試みに失敗した
[...]を失敗したのlib \のlibhello.aを開くために
の試みに失敗しました
リストには他のディレクトリやファイル名が載っていますが、そのうちの一つが "hello.so"か "libhello.so"ではないことが分かります。私は理由を知りませんが、ldがコンパイル時に.soファイルを探していないようです。私はここで何をしますか?
を失敗したのlib/libhello.dllを開くために の試みに失敗しましたlibhello.soがインストールされていますか?ライブラリが含まれているパスが 'LD_LIBRARY_PATH'に含まれていなければ、-lは不十分です。' -L'を指定する必要があります。さらに、mingwを使って作業しているので、.soライブラリではなく.dll共有ライブラリを必要とするWindowsオペレーティングシステム上にいることになります。 – Jack
私は複数のフォルダを使用していますが、私は-Lと-Iを使用しています。ありがとう、ジャック。 – NomeQueEuLembro