неопределенная ссылка на `getline 'в c #define _GNU_SOURCE - PullRequest
0 голосов
/ 05 апреля 2020

Я пытался создать читателя в C, потому что я новичок в этом языке в win 7, я использую все виды библиотек, но ничего не получается. Это то, что я сделал:

#include "linkedlist.h"
#define _GNU_SOURCE
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    FILE * fp;
    char * line = NULL;
    size_t len = 0;
    ssize_t read;

    fp = fopen("tableros.txt", "r");
    if (fp == NULL)
        exit(EXIT_FAILURE);

    while ((read = getline(&line, &len, fp)) != -1) {
        printf("Retrieved line of length %zu:\n", read);
        printf("%s", line);
    }

    fclose(fp);
    if (line)
        free(line);
    exit(EXIT_SUCCESS);
}

, но этот код выдает мне ту же ошибку undefined reference to getline in c, я действительно не знаю, какая может быть ошибка, поэтому я пытаюсь использовать другую библиотеку, которую я нахожу здесь вот еще одна попытка, тот же код, но с #define _POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700:

#include "linkedlist.h"
#define _POSIX_C_SOURCE >= 200809L || _XOPEN_SOURCE >= 700 
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    FILE * fp;
    char * line = NULL;
    size_t len = 0;
    ssize_t read;

    fp = fopen("tableros.txt", "r");
    if (fp == NULL)
        exit(EXIT_FAILURE);

    while ((read = getline(&line, &len, fp)) != -1) {
        printf("Retrieved line of length %zu:\n", read);
        printf("%s", line);
    }

    fclose(fp);
    if (line)
        free(line);
    exit(EXIT_SUCCESS);
}

, поэтому я действительно не знаю, что может быть, здесь я собираюсь поместить скриншот моего редактора в дело что проблема может быть компилятором или другой вещью, которую я не видел :(: enter image description here вот ошибки, которые C дают мне более подробно:

C:\Users\RAULDE~1\AppData\Local\Temp\cctm12ki.o tablero.c:(.text+0x78): undefined reference to `getline'
C:\Users\Raul del Rio\Desktop\archivos c sist oper\collect2.exe [Error] ld returned 1 exit status
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...