undefined reference 是连接器的错误信息。你的系统没有 so 但是有 .h 就会这样。或者 .so 放在了错误的位置或者编译参数有错。不过你瞎自己编译什么,直接在线装一个 ftp 服务器程序不就行了。
crypt 是 libcrypt 提供的,而 libcrypt 应该是glibc 提供的。 你的机器上是不是没装 glibc(或者版本太低)? 看一下 ls /lib/libcrypt.so* 是否存在
#include