test1.c
#include <stdio.h>
int main(void) {
printf("test\n");
delay(1000);
printf("test2\n");
}
When I try to compile...
gcc test1.c -o test1
Undefined symbols for architecture x86_64:
"_delay", referenced from:
_main in ccUnw3tY.o
ld: symbol(s) not found for architecture x86_64
collect2: ld returned 1 exit status
Certainly there is a lesson here in knowing your libraries and what linking is etc... What am I missing? I am trying to do this on OSX.
There's no delay function in C, you have to use
sleep
orusleep
depending on what OS you're on.What make you think there is a delay function. I dont see one in the osx docs. There is a sleep function
https://developer.apple.com/library/mac/#documentation/Darwin/Reference/ManPages/man3/sleep.3.html
An alternative of delay in C for unix os is the sleep function : https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/sleep.3.html do something like :
If you value is for 1000 microsecondes.
The delay function works in Borland C compiler. You have to use the
dos.h
header file in order to use delay. Some other compilers likeMinGW
may not support this.