У меня есть проект c ++ под названием core
, который успешно компилируется и создает файл dll и lib при компиляции на Windows. Теперь мне нужно импортировать функциональность из core
в другой проект под названием main
. core
имеет файл с именем core.module.ifc
:
export module core
export import :mod
export import :egx
export import :utils
В моем проекте main
у меня есть один demo.cpp
, который выглядит следующим образом:
#include "someOtherLib.h"
import std.core // error occurs here
import core
.....
some other code
Однако, main
не компилируется с ошибкой:
1>C:\Users\main\Desktop\Projects\demo\src\demo.cpp(8,11): error C2230: could not find module 'core'
Я использую VS 16 2019 для компиляции с std::c++latest
и инструментарием платформы v142. Файл core.lib правильно указан в качестве входных данных для компоновщика в свойствах проекта. Из того, что я понимаю, компилятор не может знать, что ядро является внешней библиотекой и ищет export module core
в демонстрационном проекте (который, очевидно, не работает) и требует файла, который имеет все объявления библиотеки core
. Я прав в этом предположении? Если да, то как будет выглядеть этот файл?
Итак, я считаю, что краткое изложение моего вопроса будет так: как импортировать модуль, который экспортируется из библиотеки, в мой проект?