Ошибка при компиляции инструментов ipsec ... Что на самом деле означает PATH_IPSEC_H? - PullRequest
0 голосов
/ 05 июля 2011

Как я уже сказал в заголовке. Я пытаюсь скомпилировать libipsec прямо сейчас, и у меня возникли сложности (не использую библиотеку C, для которой она была предназначена для компиляции). Многие из моих ошибок вызваны строкой

#include PATH_IPSEC_H, но path_ipsec_h никогда нигде не объявляется и не выглядит как ключевое слово C ...

Что на самом деле означает PATH_IPSEC_H? Будет ли эта строка эквивалентна #include <ipsec.h>?

Если я не предоставил правильную информацию ... извините .. Я все еще новичок в этом. Просто скажи мне, что тебе нужно знать.

1 Ответ

0 голосов
/ 05 июля 2011

Найдите файл с именем config.h, очень вероятно, что этот символ будет определен в соответствии со значением для вашей среды. Я быстро просмотрел случайно выбранный файл ipsec , и он начинается:

#include "config.h"

#include <sys/types.h>
#include <sys/param.h>
#include <sys/socket.h>

#include <netinet/in.h>

#include PATH_IPSEC_H

Это указывает на то, что PATH_IPSEC_H определяется config.h или передается в командной строке при компиляции этого файла. Наличие строки #include "config.h" делает это (по моему мнению, без каких-либо предварительных знаний об этой конкретной библиотеке) наиболее вероятным выбором.

Обновление: также весьма вероятно, что этот файл config.h создан каким-то инструментом сборки, то есть, вероятно, его там нет, если вы не запустили соответствующий инструмент для его генерации, обычно после анализа ваше окружение.

...