The wrong order, it should be gcc -o file file.c -lcrypt Basically, the library switch should be after the usage of functions in it.. /Andy | > | > gcc -lcrypt file.c -o file | > | > unresolved linker error (crypt undefined?) -- The eye of the beholder rests on the beauty!