Как бороться с зависимостями .dll? - PullRequest
0 голосов
/ 20 сентября 2019

Я написал простую программу на C, которая генерирует файл .tex , содержащий список упражнений, и выводит pdf , вызывая системный вызов () для ' pdflatex '.

Очевидно, что он будет работать на моем ПК, так как Я установил целый пакет miktex , но попытка заставить его работать на других машинах Windows выдаетне менее 4 .dll зависимостей .

Что мне нужно знать:

  • Как опытный разработчик справляется с отсутствующими зависимостями?
  • Есть ли процедура, которой следует dev, чтобы узнать, какие зависимости нужны для файла .exe?(Например, если вы хотите узнать зависимости для файла foo.exe, вам нужно искать [...] в Google)
  • Какое лучшее решение: скопируйте все недостающие зависимости в папке релизамоя программа или предложить пользователю установить miktex?
  • Что такое файл .dll?
  • Как разработчик создает их?Я знаю, что они связаны с компиляцией исходных файлов в многократно используемом объектном коде.
  • Буду ли я когда-нибудь хорошим разработчиком?Извините, я позволил некоторым мыслям течь в моих руках.

1 Ответ

0 голосов
/ 20 сентября 2019

DLL - это «динамическая библиотека», установленная на компьютере с предварительно скомпилированным кодом, которая может использоваться несколькими приложениями.Преимущества динамической библиотеки по сравнению со статической библиотекой состоят в том, что ваш установочный пакет может быть меньше, а разработчик библиотеки может исправить ошибки и дыры в безопасности, от которых выиграют все приложения.

В MS dev studio вы можетепросто выберите построить DLL.С mingw64 вы просто устанавливаете имя цели сборки на what.dll в принципе.Вам нужно пометить функции, которые вы хотите использовать для клиентов, «точки входа» и предоставить заголовок для этих функций.

Правильный установщик пакета должен справиться с установкой dll, которая нужна вашему пакету.Это может означать, что он запрашивает загрузку и установку дополнительных пакетов или что DLL-файлы включены в установку.

Да, если вы продолжаете задавать правильные вопросы: -)

...