clibgen.generateLibraryDefinition
и clibgen.buildInterface
функции не выполняются при анализе некоторых заголовочных файлов на платформе macOS.
Предположим, что у вас есть два файла заголовков. Заголовок файла simple1.hpp
включает стандартный заголовок, такой как vector
.
#ifndef SIMPLE1_HPP #define SIMPLE1_HPP #include <vector> // class definitions // functions #endif
Заголовок файла simple2.hpp
включает simple1.hpp
.
#include "simple1.hpp" // class definitions based on simple1.hpp content // other functionality
Этот вызов на clibgen.generateLibraryDefinition
генерирует ошибки при анализе заголовочного файла на macOS.
clibgen.generateLibraryDefinition(["simple1.hpp","simple2.hpp"],"PackageName","simple")
Чтобы включить это содержимое в библиотеку, создайте файл заголовка оболочки с содержимым simple1.hpp
и simple2.hpp
. Для примера создайте wrapsimple.hpp
с этими операторами:
#ifndef SIMPLE1_HPP #define SIMPLE1_HPP #include <vector> // class definitions // functions #endif // Start of simple2.hpp content. Do not add the include simple1.hpp statement. // class definitions based on simple1.hpp content // other functionality
Создайте определение библиотеки definesimple.mlx
использование файла заголовка оболочки.
clibgen.generateLibraryDefinition("wrapsimple.hpp","PackageName","simple")