Удалить зависимость программы от определенной DLL - PullRequest
1 голос
/ 11 декабря 2011

Я пишу приложение на C, которое использует pcre3.dll для регулярных выражений.

Проблема в том, что программе требуется pcre3.dll на каждом клиентском компьютере, на котором я пытаюсь запустить программу.

Как мне удалить зависимость моего приложения от pcre3.dll?

1 Ответ

3 голосов
/ 11 декабря 2011

Вам необходимо ссылаться на pcre3 статически, а не динамически, как вы делаете сейчас.

Если вы компилируете pcre из исходного кода, то в файле NON-UNIX-USE указано:

СВЯЗЬ ПРОГРАММ В ОКРУЖАЮЩЕЙ СРЕДЕ WINDOWS

Если вы хотите статически связать программу с библиотекой PCRE в форме файла не-dll .a, вы должны определить PCRE_STATIC, прежде чем включать pcre.h или pcrecpp.h,в противном случае экспортируемые функции pcre_malloc () и pcre_free () будут объявлены __declspec (dllimport) с нежелательными результатами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...