2016-09-23 8 views
0

Я успешно выполнил биометрические отпечатки и отправил на сервер узлов с помощью futronic sdk. Я хочу иметь возможность использовать эту библиотеку также для сопоставления на сервере, потому что там хранятся биометрические отпечатки для всех пользователей. Я обрушился на библиотеку node-ffi, которая помогает определять эквивалентные функции C, которые я экспортировал, и скомпилировал их в DLL-файл.Биометрическое сопоставление с futronic sdk с помощью сервера nodejs

Теперь проблема заключается в том, что я попытался портировать функции ftrAnsiSDK, но ftrScanAPI.dll и файл ftrAnsiSDK.dll не удалось скомпилировать. Он дает эту ошибку:

...collect2.exe [Error] ld returned 5 exit status

Когда я компилирую и экспортировать функции, которые не зависят от этих двух библиотек, мой код работает отлично, и функции легко экспортировать и используется на сервере узла. Может ли кто-нибудь дать мне подсказку?

Адрес link to the repo. Он состоит из библиотеки lib и .dll, которая была использована.

Для серверного кода здесь отрывок из того, что я пытаюсь достичь:

var libm = ffi.Library('lib/visystem', { 
'HelloWorld': [ 'void', [] ], 
'PrintErrorMessage': [ 'void', ['int'] ], 
'CaprureImage': [ 'int', ['int','int','int'] ]}); 

HelloWord и PrintErrorMessages методы, которые я использовал в качестве теста, чтобы обеспечить функции экспортируются, прежде чем я приступил к основным функциям (вы можете увидеть определение функции из кода в репо ..), который зависит от futronic lin and sdk.

В настоящее время я использую 64-битную операционную систему, и я установил ту же программу на 32-разрядную машину, но она все еще не компилировала и не экспортировала функцию. Редактор кода, который я использую, - Dev ++ C.

Может ли кто-нибудь помочь или даже дать мне подсказку о том, как достичь этой цели?

ответ

0

Как отказ от ответственности, я не знаком с разработкой Dev-C++ IDE или MinGW.

Однако после беглого взгляда на вашем GitHub репо, в соответствии с вашими libvisystem.def файл, кажется, что только функции, которые экспортируются вашей DLL являются:

  • HelloWorld
  • PrintErrorMessage
  • ReadTemplateFile
  • SaveBmpFile
  • SaveTemplateFile

Это также подтверждается при взгляде на libvisystem.a библиотеки заголовка:

enter image description here

Таким образом, вы, вероятно, следует начать вручную добавить остальную часть экспортируемых функций в вашем dll.h в файл def, аналогично тем, которые уже существуют, и посмотрите, не изменило ли это что-либо.


Примечание:

Я не уверен, является ли __declspec (dllexport) директива игнорируется Dev-C++ компилятор/линкер и он использует файл четкости вместо этого. Возможно, у других на SO есть идея.