Скомпилировать wcecompat в dll - PullRequest
4 голосов
/ 25 января 2011

Я использую wcecompat для устранения разрыва между WinCE SDK и OpenSSL. Из-за проблемы с лицензией LGPL я хочу скомпилировать ее в динамически связанную библиотеку. Вот часть make-файла (полный файл находится на https://github.com/mauricek/wcecompat/blob/master/makefile).. Мой вопрос: как изменить его, чтобы построить dll вместо статической lib?

all: lib\wcecompat.lib lib\wcecompatex.lib

echo $(OBJS)

obj:
@md obj 2> NUL

lib:
@md lib 2> NUL

$(OBJS): makefile obj


lib\wcecompat.lib: lib $(OBJS) makefile
@lib /nologo /out:lib\wcecompat.lib $(LFLAGS) $(OBJS)

lib\wcecompatex.lib: lib $(OBJS) makefile
@lib /nologo /out:lib\wcecompatex.lib $(OB

JS)

1 Ответ

1 голос
/ 19 апреля 2011

Используйте link (т.е. link.exe) вместо lib для двух целей:

lib\wcecompat.lib: lib $(OBJS) makefile
    @lib /nologo /out:lib\wcecompat.lib $(LFLAGS) $(OBJS)

lib\wcecompatex.lib: lib $(OBJS) makefile
    @lib /nologo /out:lib\wcecompatex.lib $(OBJS)

... и переименуйте цели в wcecompat.dll и wcecompatex.dll соответственно.

Тем не менее, это действительно только поможет вам построить библиотеку DLL, она не распространяется на любые модификации для экспорта функций, которые могут вам понадобиться из этой библиотеки DLL.Также помните, что библиотеки DLL с кодом имеют функцию входа DllMain в качестве точки входа (хотя она не экспортируется как таковая).

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