cc -pthread -Wall -Wextra -Werror=implicit-function-declaration unistd/unlinkat.c -o unistd/unlinkat -D_GNU_SOURCE -D_BSD_SOURCE -D_ALL_SOURCE -D_DEFAULT_SOURCE -lm -lpthread -lrt -lintl -liconv relibc getrlimit(3, 0x7ffffffffc80): not implemented relibc getrlimit(3, 0x7ffffffffba0): not implemented relibc getrlimit(9, 0x7ffffffffb60): not implemented relibc getrlimit(9, 0x7ffffffffb90): not implemented relibc getrlimit(5, 0x7ffffffffb90): not implemented relibc getrlimit(9, 0x7ffffffffb60): not implemented unistd/unlinkat.c: In function 'main': unistd/unlinkat.c:55:14: error: implicit declaration of function 'unlinkat'; did you mean 'unlink'? [-Werror=implicit-function-declaration] 55 | if ( unlinkat(tmpdir_fd, last_slash + 1, AT_REMOVEDIR) < 0 ) | ^~~~~~~~ | unlink unistd/unlinkat.c:55:50: error: 'AT_REMOVEDIR' undeclared (first use in this function) 55 | if ( unlinkat(tmpdir_fd, last_slash + 1, AT_REMOVEDIR) < 0 ) | ^~~~~~~~~~~~ unistd/unlinkat.c:55:50: note: each undeclared identifier is reported only once for each function it appears in cc1: some warnings being treated as errors