Я построил либиоту в соответствии с инструкциями руководство по плетению, и установил его, используя:
make -j lib
sudo make install
Это установленные /usr/bin/libiota.a и заголовочные файлы в / usr / include / iota /.
Сейчас я пытаюсь скомпилировать следующую простую программу (main.cc):
#include <iota/daemon.h>
int main(int argc, char** argv) {
return 0;
}
с: g++ main.cc
и я получаю следующую ошибку:
In file included from /usr/include/iota/daemon.h:28:0,
from main.cc:1:
/usr/include/iota/schema/traits/goog_device.h:27:58: fatal error: include/iota/schema/traits/goog_device_enums.h: Aucun fichier ou dossier de ce type
#include "include/iota/schema/traits/goog_device_enums.h"^
compilation terminated.
Очевидно, goog_device.h включает файл относительно / usr /, а не / usr / include …
Что-то не так с моим использованием библиотеки? Каков рекомендуемый способ включения заголовочных файлов?
Я использую commit b53901b6cc516941f1432da030eb3c76c213fbea от 2 февраля 2017 года.
Это кажется проблемой в том, как мы включили заголовки. Мы исправим это в следующем выпуске. Не могли бы вы добавить путь для включения -I / usr / в ваш make-файл приложения в качестве временного решения?
Спасибо
Bhaskar
Других решений пока нет …