0

mysql ライブラリを含む C で自己記述プロジェクトをコンパイルしようとすると、次のエラーが発生します。

gcc -c src/oDAO.c
src/oDAO.c:4:23: fatal error: my_global.h: No such file or directory

次のように my_global.h を含めました。

#include <my_global.h>

システムがヘッダー ファイルを /usr/include/mysql/ にコピーし、gcc がシステム ヘッダー ファイルを /usr/include (サブディレクトリなし) でのみ検索しているため、エラーが発生します。/usr/include/mysql を追加の共有ライブラリ ルートとして追加して gcc を呼び出すにはどうすればよいですか?

ここに私の実際の Makefile があります:

all: main.o oDAO.o FileUtils.o DVDDAO.o
    gcc -Llib -o oDAO main.o oDAO.o FileUtils.o DVDDAO.o -llinkedlist -lncurses `mysql_config --cflags --libs` 

main.o:
    gcc -c src/main.c

oDAO.o:
    gcc -c src/oDAO.c

FileUtils.o:
    gcc -c src/FileUtils.c

DVDDAO.o:
    gcc -c src/DVDDAO.c

clean:
    rm -f *.o
    rm -f oDAO
    rm -f *.bak
    rm -f *.~
4

2 に答える 2

0

私は自分で答えを持っています:

mysql ライブラリを含む .c ファイルをオブジェクト ファイルにコンパイルしようとするたびに、次のようにコンパイルする必要があります。

gcc -c DVDDAO.c `mysql_config --cflags`

その後、すべてが正常に動作します

于 2013-04-28T09:05:57.430 に答える
0

-Iインクルード ディレクトリを追加するオプションとライブラリ ディレクトリを追加するオプションを試してください-L

于 2013-04-28T09:50:14.590 に答える