Kernel_Lover

Kernel_Lover

0个粉丝

17

问答

0

专栏

0

资料

Kernel_Lover  发布于  2018-01-23 10:48:30
采纳率 0%
17个问答
2779

关于找不到 faac.h 头文件的问题

 
在 sample_audio.c 文件中有:

#include "pcm2acc.h"

而在 pcm2acc.h 文件中有:

#include

在 Makefile 文件中添加:

FAAC_INCLUDE := /faac/faac-1.28/arm/include
.............
$(TARGET):%:%.o $(COMM_OBJ)
        $(CC) $(CFLAGS) -lpthread -lm -I$(FAAC_INCLUDE) -o $@ $^ $(MPI_LIBS) $(AUDIO_LIBA) $(JPEGD_LIBA) $(FACC_LIBS)

我在交叉编译 faac 时,指定了 lib 和 include 目录存放在  /faac/faac-1.28/arm 目录下。所以 faac 头文件目录为 /faac/faac-1.28/arm/include,在命令行中加了 -I$(FAAC_INCLUDE) 选项,用于包含 faac 头文件目录为 /faac/faac-1.28/arm/include,但是编译时出现了错误:

执行命令:

wzm@hp:/nfs/mpp_single/mpp_single/sample/audio$ make

错误信息:

In file included from sample_audio.c:24:0:
pcm2acc.h:8:18: fatal error: faac.h: No such file or directory

发生了找不到 faac.h 头文件的错误,请问一下,这是哪里出现了错误?谢谢!




我来回答
回答1个
时间排序
认可量排序

Kernel_Lover

0个粉丝

17

问答

0

专栏

0

资料

Kernel_Lover 2018-01-24 11:27:24
认可0
执行命令:

wzm@hp:/nfs/mpp_single/mpp_single/sample/audio$ make

输出的部分编译信息:

arm-hisiv400-linux-gcc -Wall -g -I/nfs/mpp_single/mpp_single/include -I/nfs/mpp_single/mpp_single/sample/audio/../common  -I/nfs/mpp_single/mpp_single/extdrv/tlv320aic31 -Dhi3536 -DHICHIP=0x35360100 -DHI_RELEASE -DHI_XXXX -lpthread -lm -ldl -DHI_ACODEC_TYPE_INNER -DHI_ACODEC_TYPE_HDMI   -c -o sample_audio.o sample_audio.c

对照命令:$(CC) $(CFLAGS) -lpthread -lm -o $@ $^ $(MPI_LIBS) $(AUDIO_LIBA) $(JPEGD_LIBA) $(FAAC_LIBS)

将  $(CFLAGS) 变量展开为:-Wall -g -I/nfs/mpp_single/mpp_single/include -I/nfs/mpp_single/mpp_single/sample/audio/../common  -I/nfs/mpp_single/mpp_single/extdrv/tlv320aic31 -Dhi3536 -DHICHIP=0x35360100 -DHI_RELEASE -DHI_XXXX -lpthread -lm -ldl -DHI_ACODEC_TYPE_INNER -DHI_ACODEC_TYPE_HDM

可以看到将 .c 文件编译为 .o 文件,不是使用  $(CC) $(CFLAGS) -lpthread -lm -o $@ $^ $(MPI_LIBS) $(AUDIO_LIBA) $(JPEGD_LIBA) $(FAAC_LIBS),使用的命令是  $(CC) $(CFLAGS) -c -o  sample_audio.o sample_audio.c 这种的命令,命令 $(CC) $(CFLAGS) -lpthread -lm -o $@ $^ $(MPI_LIBS) $(AUDIO_LIBA) $(JPEGD_LIBA) $(FAAC_LIBS) 应该是在最后生成可执行文件时才用到。

所以将 Makefile 文件中的:

#CFLAGS += -DAUDIO_SAMPLE

改为

CFLAGS += -I$(FAAC_INCLUDE)

就不会出现 faac.h: No such file or directory 这种错误
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区