split a string into an array of strings
int main() {
    char *line = "main : linked_list.o main.o";
    char **tokens = tokenize(line);
    int i = 0;
    while (tokens[i] != NULL) {
        printf("%s\n", tokens[i]);
        i++;
    }
    return 0;
}

char **tokenize(char* line) {
    int i = 0;
    char *token = strtok(line, " ");
    char **tokens;
    while (token != NULL) {
        tokens[i] = token;
        i++;
        token = strtok(NULL, " ");
    }
    return tokens;
}