Как я могу связать исполняемый код с динамической библиотекой?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Как я могу связать исполняемый код с динамической библиотекой?

Сообщение Anonymous »

У меня есть кроссплатформенная динамическая библиотека и исполняемый файл.
В исполняемом файле у меня есть структура с реализованной статической функцией внутри.
В динамической библиотеке у меня такое же определение структуры и статической функции внутри. Все определения являются внешними C.
  • Компиляция .so с помощью gcc работает нормально.
  • Компиляция DLL с помощью ms vstudio дает «неразрешенную внешнюю» для статической функции, даже с __declspec(dllimport).
Цель состоит в том, чтобы связать код внутри исполняемый файл в динамическую библиотеку, чтобы библиотека могла вызывать исполняемый код во время выполнения. Я понимаю, что с таким необычным связыванием есть некоторые подводные камни, но я не вижу другого способа сделать это.
Вопросы:
  • Почему компоновщик Windows не работает?
  • Почему gcc хорошо компонуется?
  • Каковы альтернативы такому связыванию? Может быть, я ожидаю или делаю что-то совершенно неправильно, и есть гораздо более элегантные способы вызова кода из исполняемого файла из динамически подключаемой библиотеки во время выполнения?


Подробнее здесь: https://stackoverflow.com/questions/796 ... ic-library
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»