如何解决“严重错误:x.264没有此类文件或目录”

时间:2019-04-23 20:18:14

标签: c makefile x264 libx264

我编写了一个makefile,该文件构建了一个附加了x.264标头的C程序。尝试在终端中执行makefile之后,我收到致命错误: “ example.c行[#include的行] x264.h没有这样的文件或目录”。在下面可以找到C代码和makefile(位于同一文件夹中,该库-包含x264.pc文件-在父文件夹的libx264文件夹中)。如果能为您提供帮助,我将不胜感激。

Makefile:

    CC = gcc

    CFLAGS = -c -Wall `export PKG_CONFIG_PATH=../libx264 && pkg-config            --cflags x264`
    LDFLAGS = -static `export PKG_CONFIG_PATH=../libx264 && pkg-config --libs --static libx264`


    all: Release

    Debug: CFLAGS += -g
    Debug: example

    Release: example

    test: example.o
        $(CC) -o example example.o $(LDFLAGS)

    test.o: example.c
        $(CC) $(CFLAGS) example.c -o example.o

    clean:
        rm -f example.o example

example.c代码

    #include <stdio.h>
    #include <x264.h>
    int main( int argc, char **argv )
    {
        int width, height;
         return 0;
    }

1 个答案:

答案 0 :(得分:1)

您需要告诉编译器(更准确地说是预处理器)头文件在使用-I选项的位置:

CFLAGS = -c -Wall -I../libx264

如果我是对的,则需要解压缩该.pc文件,以使x264.h确实位于../libx264中。

链接器标志的相似之处(假设libx264.a中有一个../libx264文件),您必须在其中指定库在何处使用-L选项:

LDFLAGS = -static -L../libx264 -lx264

或者,您当然也可以写:

LDFLAGS = -static ../libx264/libx264.a