Scrypt — C++ | Библиотека криптографии из litecoin? Приветствую. Как включить в проект scrypt в проект?
Использую IDE, CLion (оно в свое время использует cmake).
Если просто подключить scrypt.h в проект - будут ошибки при линковке:/opt/clion/bin/cmake/bin/cmake --build /home/continue/.CLion2016.1/system/cmake/generated/untitled-ee2b67a2/ee2b67a2/Debug --target untitled -- -j 8
Scanning dependencies of target untitled
[ 50%] Building CXX object CMakeFiles/untitled.dir/main.cpp.o
[100%] Linking CXX executable untitled
CMakeFiles/untitled.dir/main.cpp.o: In function `main':
main.cpp:(.text+0x28): undefined reference to `scrypt_1024_1_1_256(char const*, char*)'
collect2: error: ld returned 1 exit status
CMakeFiles/untitled.dir/build.make:94: ошибка выполнения рецепта для цели «untitled»
gmake[3]: *** [untitled] Ошибка 1
CMakeFiles/Makefile2:67: ошибка выполнения рецепта для цели «CMakeFiles/untitled.dir/all»
gmake[2]: *** [CMakeFiles/untitled.dir/all] Ошибка 2
CMakeFiles/Makefile2:79: ошибка выполнения рецепта для цели «CMakeFiles/untitled.dir/rule»
gmake[1]: *** [CMakeFiles/untitled.dir/rule] Ошибка 2
Makefile:118: ошибка выполнения рецепта для цели «untitled»
gmake: *** [untitled] Ошибка 2
Заранее спасибо.

21 Авг 2019 в 07:13
326 +1
1
Ответы
1

Проблема заключается в том, что вы подключили заголовочный файл scrypt.h, но не линкуете соответствующую библиотеку к вашему проекту.
Для исправления этой проблемы вам нужно сделать следующее:

Скачайте исходный код библиотеки scrypt с GitHub (https://github.com/Tarsnap/scrypt) или установите ее через пакетный менеджер вашего дистрибутива LinuxДобавьте путь к заголовочным файлам библиотеки в ваш CMakeLists.txt:
include_directories(/path/to/scrypt/include)Линкуйте ваш проект с библиотекой scrypt, добавив следующую строку в CMakeLists.txt:
target_link_libraries(untitled /path/to/scrypt/libscrypt.a)Пересоберите проект и запустите его снова. Работа с библиотекой scrypt должна быть успешной.

Надеюсь, это поможет вам решить проблему. Если у вас возникнут дополнительные вопросы, не стесняйтесь задавать.

20 Апр 2024 в 13:05
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир