В настоящее время я создаю свою собственную фреймворк в C++ (MSVS 2008), которая экспортирует DLL с кучей функций для пользователя моей инфраструктуры для использования/вызова. В начале, когда мой проект все еще был небольшим, все работало нормально. Я собрал свой проект. Выделились MyFramework.dll и MyFramework.lib. Я притворился пользователем; поместите файл MyFramework.dll в папку «Отладка» моего нового проекта VS, поместите файл MyFramework.lib и MyFramework.h в мою папку проекта, # include-d MyFramework.h в моем коде и voilá, я мог бы назвать (все еще простой) в рамках моего нового проекта.Создание dll, который ссылается на другую dll (MSVS2008 C++)
Но теперь я расширил рамки. Теперь он использует собственную внешнюю dll (позвольте мне называть Graphics.dll) и включил ее так же (DLL в папку Debug, .lib/.h в папке проекта, #include Graphics.h в коде).
Проблема заключается в том, что когда я создаю MyFramework.dll/MyFramework.lib, включите его в свой новый проект и постройте, компоновщик жалуется, что не смог включить Graphics.h, который, очевидно, был включен в MyFramework.dll где-то.
Так что мой вопрос. Я хотел бы, чтобы пользователь MyFramework.dll должен был включать файлы MyFramework. * В свой проект и не нуждался в копировании/вставке всех внешних библиотек, которые я решил использовать в MyFramework. Как я могу это сделать? Я взглянул на this thread. В нем говорится о добавлении существующего элемента и нажатии маленькой стрелки рядом с кнопкой «Добавить», но ... стрелка в моей версии MSVS отсутствует ...
Помощь очень ценится.
Сердечные приветы В. Спек
линкером, жалующимся на файл включения? ни за что! – stijn
Вы правы, это компилятор. –