Coloque seus argumentos para o linker depois ao invés de antes seus outros argumentos para o gcc:
ek@Ilex:~/source$ gcc -lreadline read_test.c
/tmp/cc1IuVNQ.o: In function 'main':
read_test.c:(.text+0xe): undefined reference to 'readline'
collect2: error: ld returned 1 exit status
ek@Ilex:~/source$ gcc read_test.c -lreadline
ek@Ilex:~/source$ ./a.out
enter text>foo
text: foo ^C