2012-02-04 28 views
7

私のCプログラムでは、いくつかのzlib関数(gzopengzreadなど)を使用しています。私はzlib.hヘッダファイルを私のプログラムに含め、コンパイル時に-lzオプションを追加しましたが、gz関数には未定義の参照があるというエラーが表示されます。私はkubuntu 11.10を使用していて、libgh-zlib-dev、zlib1g-dbg、zlib1g、zlib1g-devというパッケージがインストールされています。`gzopen`エラーへの未定義参照

私はリンクコマンドの位置を変更しようとしましたが、運はありません。ここでは、現時点で私が持っているものです:それはのようになります、LDFLAGSの一部としてそれらを置く

CFLAGS = -Wall -pthread -lm -lz -std = c99を-Wextra

+5

リンクコマンドを表示してください。 '-lz'を間違った場所に置いた可能性があります。 –

+0

どのように正確にコンパイルしていますか? CFLAGSはgccではなくautomakeで生成されたスクリプトで使用されます。 –

+0

@HubertKario - CFLAGSは 'make'によって理解され(使用され)それは適切なCコンパイラに供給されます。 –

答えて

9

gcc -Wall -pthread src/main.c -lm -lz -std=c99 -Wextra -o main