makefile没有这样的文件或目录:libxml / xmlstring.h

时间:2014-10-14 18:54:42

标签: c++ linux makefile

我不习惯制作文件。我的旧项目已经准备好了所有的makefile,我正在从头开始进行一项小型测试,其中包含许多我不习惯的固定库依赖项。我看了makefiles已经有几年了。

我有一个名为libopcTest的目录,其中包含以下内容:

LibOPCTest.cc
LibOPCTest.h
makefile

makefile中有这个:

INC=-I/usr/include/libxml2/libxml
LIB=-L/usr/include/libxml2/libxml
all: LibOPCTest.exe

LibOPCTest.exe: LibOPCTest.o
>tab> gcc -o LibOPCTest.exe LibOPCTest.o

LibOPCTest.o: LibOPCTest.cpp
>tab> gcc -c $(INC) $(LIB) LibOPCTest.cpp

clean:
>tab> rm LibOPCTest.o LibOPCTest.exe

我查看了/ usr / include / libxml2 / libxml,它中有xmlstring.h。我没有在opc.h中看到libxml引用,但显然它在哪里,大概是在一个包含文件中,比如config.h。

另外,我们有LibOPCTest.cpp,其中#includes <opc/opc.h>和它自己的.h文件。

main位于LibOPCTest.cpp。

当我在Linux命令提示符下键入make时,出现以下错误:

In file included from /usr/include/opc/opc.h:36:0, from LibOPCTest.cpp:1:
/usr/include/opc/config.h:37:30: fatal error: libxml/xmlstring.h: no such file or directory.

我不能在makefile中使用指向libxml的LIB和INC定义的libxml吗?我不认为我应该在opc.h中添加任何东西,包括构建它,因为它是一个罐头库。

我正在看这个makefile example,我觉得我有我需要的一切(可能不是因为它没有建造)。

我知道这是一个基本问题,但希望有人有一个很好的建议。谢谢你提前做好!!

1 个答案:

答案 0 :(得分:0)

我们决定暂停Linux版本的libOPC,因为它不是一个好的64位版本,它需要做很多工作。