3

次のインクルードファイルについて混乱しています(GCCを使用)

Ac と Bc をフォルダ AAA に入れました

BBBフォルダのBh

で:

#include <stdio.h>
#include "B.h"

main()
{
    errPrint();
}

紀元前:

#include <stdio.h>
#include "B.h"
void errPrint(void)   
{
    printf("err info\n");
}

で:

#ifndef _B_H
#define _B_H
void errPrint(void);
#endif

今私はコマンドを実行します:

#gcc -I /BBB A.c B.c -o exeobj

大丈夫です。しかし、他のフォルダーにいるときに「-I」を使用してヘッダーを指定する必要があるのは少し退屈です。「/etc/profile」ファイルを編集して追加しました

C_INCLUDE_PATH=/BBB  
export C_INCLUDE_PATH

ヘッダーフォルダーを指定してから、

echo $C_INCLUDE_PATH

正しいルートを示しています。しかし、私がコンパイルすると:

#gcc -c A.c B.c

エラーが表示されます:

error: B.h: No such file or directory

どこがうまくいかなかったのかわからない、誰もそれについての手がかりを持っている、どんな提案もweclome.

注: 私は初心者で、まだ Makefile を使用できません...

4

1 に答える 1

0

で:

#include <stdio.h>
#include <B.h>

main()
{
    errPrint();
}

紀元前:

#include <stdio.h>
#include <B.h>
void errPrint(void)   
{
    printf("err info\n");
}

使用したい場合は、#include "file.h"パスの例を指定する必要があります:"/BBB/B.h"

詳細について は、C 標準セクション 6.10.2 の段落 2 から 4 を参照してください。

編集:テスト後。試してみてください。

echo -e "C_INCLUDE_PATH=/BBB\nexport C_INCLUDE_PATH" >> ~/.bash_profile

source ~/.bash_profile

そしていま

gcc A.c B.c

頑張ってください:)

于 2013-03-24T17:28:29.353 に答える