0

kubuntu のパッケージ管理からこの便利な pnglite ライブラリをインストールしました。これには、ヘッダー ファイル「pnglite.h」とオブジェクト ファイル「pnglite.o」が 1 つだけ含まれています。それらのファイルがどこにあるかはわかりましたが、それらをリンクする方法がわかりません。私はネットビーンズを使用していますが、そこにリンクする方法がわかりません。また、コンソールでそれらをリンクする方法もわかりません。

テストしたい小さなテスト プログラムがありますが、「undefined reference to function: XXXXXXX」というエラー メッセージが表示されます。netbeans とコンソールの両方で gcc を使用しています。そのヘッダー ファイルは /usr/include ディレクトリにあり、オブジェクト ファイルは /usr/lib ディレクトリにあります。テスト プログラムはホーム ディレクトリのプログラミング ディレクトリの下にあります。

そのヘッダーとオブジェクトを、ソースと同じディレクトリに配置する必要がありますか? または、現在の場所からそれらをリンクする方法はありますか? 現時点でそれらをリンクすることが可能であることを知っています。その方法を知り、理解したいと思います。

どんな助けでも大歓迎です:)

4

1 に答える 1

2

/usr/lib/pnglite.ogccのリンク呼び出しに加えて、必要な共有ライブラリを追加するだけですpnglite(コメントから、zlibが必要なようです)。たとえば、ソースが と の場合、myapp1.c次のようになりますmyapp2.c

gcc -c myapp1.c
gcc -c myapp2.c
gcc -o myapp myapp1.o myapp2.o /usr/lib/pnglite.o -lz
于 2010-03-30T07:43:22.827 に答える