Я пытаюсь следовать примеру SWIG Java, расположенному here. В этом примере используется cygwin для компиляции. Я хотел бы передать компилятору alredy скомпилированную dll, test.dll, а не исходный C-файл. В примере SWIG.org используется источник C. Я попытался передать test.dll (скомпилированный источник C), а затем example.dll третьей команде, но я получаю сообщение об ошибке «test.dll: нет такого файла или каталога». Третья команда примера SWIG.org создает файл example.dll на основе example.c. Как я могу создать example.dll, чтобы он использовал test.dll вместо example.c?SWIG CYGWIN DLL linking
Есть ли способ сделать это в контексте этого примера?
Моей попытка без C Источника, просто дллы:
$ -java example.i SWIG
$ НКА example_wrap -I/с/jdk1.6.0_30/включает -I /c/jdk1.6.0_30/include/win32
$ НКУ -shared example_wrap.o -mno-Cygwin -Wl, - адд-STDCALL псевдоним -o test.dll example.dll
SWIG.org Пример кода:
$ swig -java example.i
$ gcc **-c example.c** example_wrap.c -I/c/jdk1.3.1/include -I/c/jdk1.3.1/include/win32
$ gcc -shared example.o example_wrap.o -mno-cygwin -Wl,--add-stdcall-alias -o example.dll
Вы действительно хотите использовать Java 1.3.1, учитывая его почти 12 лет? –
Я использую 1.6, это было из примера ... исправлена опечатка. – c12