undefined reference to `crypt'

后端 未结 4 1075
既然无缘
既然无缘 2021-01-12 08:27

I am using the below code that i found somewhere in the net and i am getting an error when i try to build it. The compilation is ok.

Here is the error:



        
相关标签:
4条回答
  • 2021-01-12 08:36

    You've to add -lcrypt when compiling... Imagine the source file is called crypttest.c, you'll do:

    cc -lcrypt -o crypttest crypttest.c
    
    0 讨论(0)
  • 2021-01-12 08:37

    crypt.c:(.text+0xf1): undefined reference to 'crypt' is a linker error.

    Try linking with -lcrypt : gcc crypt.c -lcrypt.

    0 讨论(0)
  • 2021-01-12 08:47

    This could be due to two reasons:

    1. Linking with the crypt library: use -l<nameOfCryptLib> as a flag to gcc.
      Example: gcc ... -lcrypt where crypt.h has been compiled into a library.
    2. The file crypt.h is not in the include path. You can use < and > tags around a header file only when the file is in the include path. To ensure that crypt.h is present in the include path, use the -I flag, like so: gcc ... -I<path to directory containing crypt.h> ...
      Example: gcc -I./crypt where crypt.h is present in the crypt/ sub-directory of the current directory.

    If you do not want to use the -I flag, change the #include<crypt.h> to #include "crypt.h"

    0 讨论(0)
  • 2021-01-12 09:02

    Chances are you forget to link the library

      gcc ..... -lcrypt
    
    0 讨论(0)
提交回复
热议问题