Использование (устаревшего) метода C crypt () для домашнего задания - компилятор не будет связывать? - PullRequest
0 голосов
/ 14 июля 2020

all:

Я должен использовать функцию crypt () в домашнем задании. Это старый метод C, который, вероятно, довольно небезопасен, но он используется только для демонстрационных целей.

Единственное, я не могу понять, как использовать функцию dang. Я использую CLion в качестве IDE в Ubuntu. Это должно быть определено в или , но я не могу заставить это скомпилировать. Функция crypt () выдает ошибку "неопределенная ссылка" после сборки проекта. Я знаю, что это одна из этих двух библиотек - так в чем дело? Есть ли проблема со ссылкой на эту библиотеку или что-то в этом роде? Я читал и наткнулся на «use -lcrypt», но я не совсем уверен, что с этим делать внутри CLion. Единственные объяснения касались файлов make; что не относилось ко мне (или они относились, и я не знал, как это связано). Для этого тоже не так много документации из-за того, насколько эта функция устарела.

Спасибо всем.

РЕДАКТИРОВАТЬ: Спасибо, Юджин! Думаю, я понял это. . .

target_link_libraries(CryptExample -lcrypt)

В файле CMake.

1 Ответ

0 голосов
/ 14 июля 2020

Всем, кто наткнется на это в будущем, добавьте

target_link_libraries(CryptExample -lcrypt)

в свой CMakeLists.txt в среде CLion IDE. Его следует поместить под строкой add_executable (...). Замените «CryptExample» на то, что вы назвали в своем проекте.

...