C++ 如何编译C/C++;在Netbeans7.1.1中,GNU位于远程主机上

C++ 如何编译C/C++;在Netbeans7.1.1中,GNU位于远程主机上,c++,C++,我已经安装了连接到远程生成主机(我的虚拟机)的Netbeans 7.1.1。 我试图编译我在某个网站上找到的一些程序 #include <stdlib.h> #include <stdio.h> #include <string.h> #include <libxml/tree.h> #include <libxml/parser.h> #include <libxml/parserInternals.h> // Appe

我已经安装了连接到远程生成主机(我的虚拟机)的Netbeans 7.1.1。 我试图编译我在某个网站上找到的一些程序

#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <libxml/tree.h>
#include <libxml/parser.h>
#include <libxml/parserInternals.h>

// Appelée à la rencontre de chaque balise ouvrante
void debut_element(void *user_data, const xmlChar *name, const xmlChar **attrs) {
printf("Début de l'élément : %s\n", name);
}

int main() {
// Initialisation à zéro de tous les membres (NULL pour un pointeur par conversion)
xmlSAXHandler sh = { 0 };

// Affectation des fonctions de rappel
sh.startElement = debut_element;

xmlParserCtxtPtr ctxt;
// Création du contexte
if ((ctxt = xmlCreateFileParserCtxt("catalogue.xml")) == NULL) {
    fprintf(stderr, "Erreur lors de la création du contexte\n");
    return EXIT_FAILURE;
}
// Fonctions de rappel à utiliser
ctxt->sax = &sh;
// Analyse
xmlParseDocument(ctxt);
// Le document est-il bien formé ?
if (ctxt->wellFormed) {
    printf("Document XML bien formé\n");
} else {
    fprintf(stderr, "Document XML mal formé\n");
    xmlFreeParserCtxt(ctxt);
    return EXIT_FAILURE;
}
// Libération de la mémoire
xmlFreeParserCtxt(ctxt);

return EXIT_SUCCESS;
}
我知道这已经被问了几千次了,但是我找不到正确的答案。
非常感谢你们中的任何人能指导我,因为我是这方面的新手。

我不知道如何配置Netbeans;但如果手动执行此命令,则代码编译不会出现问题:

gcc -o xmltest xmltest.c -I /usr/include/libxml2 -lxml2
如果您还没有
Makefile
,这是一个好的开始:

LDFLAGS := -I /usr/include/libxml2 -lxml2

但是,如果Netbeans强制您使用不同的构建系统,您必须找到另一种方法来适当地设置链接器选项。

libxml2库位于libxml2/libxml/*下,但所有头文件都使用libxml/*

将指令更改为

#include <libxml2/libxml/*>

重新启动Netbeans,所有红色消失,构建成功并成功运行。

远程系统上是否存在
/usr/include/libxml2
?您的输出中没有显示
-lxml2
——您对
Makefile
有信心吗?嗯,我在这方面是新手,我不知道如何进行链接以及所有:(所以,我对我的Makefile不是很有信心..我必须从我的netbeans配置任何东西吗?谢谢你的帮助sarnold!我缺少LDFLAGS-“-lxml2”部分。在netbeans中设置它之后,它工作了!
ln -s /usr/include/libxml2/libxml /usr/include/libxml