отсутствует, я бы отправить письмо разработчикам, как это выглядит, как они собрали Dirent от экспорта и назвал его pHash. Определенно, что-то не так. Я получаю тот же результат, что и вы из dll в папках «Отпуск» и «Отладка» со страницы загрузки.
Я только что собрали его самостоятельно, используя следующие команды:
g++ -c *.cpp
g++ -shared pHash.o -o pHash.dll
И я получаю следующие экспортируемые функции:
_Z19ph_hamming_distanceyy
ph_about
ph_bitcount8
ph_compare_text_hashes
ph_hammingdistance2
ph_readfilenames
ph_texthash
phash_version
можно затем вызвать функцию ph_about
из AutoIt:
MsgBox(0, "ph_about", ph_about())
Func ph_about()
Local $aResult = DllCall("pHash.dll", "str", "ph_about")
If @error Then Return SetError(@error, @extended, "")
Return $aResult[0]
EndFunc ;==>ph_about
Если вам просто нужно написать хэширование текста и не иметь t oolchain установлен, тогда поп меня по электронной почте, и я пришлю вам двоичный файл, который я скомпилировал. У меня нет постоянного хостинга, поэтому я не буду добавлять ссылку здесь, где она будет гнить через несколько месяцев.
Как уже упоминалось в моем комментарии, если вы хотите, чтобы хеш изображения или видео-файлы, то вы должны установить зависимости, перечисленные на this page и компилировать с HAVE_IMAGE_HASH
и HAVE_VIDEO_HASH
флагами.
В чем проблема? У вас есть 6 функций: closedir, opendir, readdir, rewinddir, seekdir и telldir. Сколько должно быть там? – VixinG
Глядя на файл заголовка, вам может потребоваться установить некоторые из зависимостей, а затем перекомпилировать с помощью 'HAVE_IMAGE_HASH' и' HAVE_VIDEO_HASH'. В Windows необычно ожидать, что пользователь будет компилировать двоичный файл. – Matt