1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/linxyruffy-httpclient

 / Детали:

При компиляции этой библиотеки с помощью mingw32/64 gcc компилятора на win возникает ошибка

Завершенные
Владелец
Создано  
26.11.2024

В корневом каталоге создаём test.c:

#include <stdio.h>
#include "http.h"
int main (void)
{
	ft_http_init();
	printf("test");
}

Выполняем
gcc *.c -o test -lws2_32

введите сюда описание изображения

Решение проблемы заключается в изменении двух мест

#define COMP_RADIX 4294967296i64

на

#define COMP_RADIX 4294967296LL

Далее необходимо добавить следующий фрагмент кода

#ifdef _MSC_VER
#include <winsock2.h>
#include <windows.h>
#define __unused
typedef __int64 int64_t;
typedef unsigned __int64 uint64_t;
typedef int int32_t;
typedef unsigned int uint32_t;
typedef unsigned short uint16_t;
typedef unsigned char uint8_t;
typedef unsigned long uintptr_t;
typedef long ssize_t;
#define __func__ ""
#define __packed
#ifndef alloca
#define alloca(x) _alloca(x)
#endif
#ifndef EWOULDBLOCK
#define EWOULDBLOCK WSAEWOULDBLOCK
#endif
#define SOCKET_ERRNO WSAGetLastError()
#pragma comment(lib, "ws2_32.lib")  // Linking with winsock library
#else                               /* _MSC_VER */
//Ниже необходимо добавить
#ifdef _WIN32
#include <WinSock2.h>
#pragma comment(lib, "ws2_32.lib")  // Linking with winsock library
#endif
//Добавление завершено
#include <stdint.h>
#include <unistd.h>
#define __packed __attribute__((packed))
#define SOCKET_ERRNO errno
#endif

Комментарий (0)

GitLife Service Account Задача создана
GitLife Service Account изменить Статус задачи с Предстоит сделать на Завершенные
Развернуть журнал операций

Вход Перед тем как оставить комментарий

Статус
Ответственный
Контрольная точка
Pull Requests
Связанные запросы на слияние могут быть закрыты после их объединения
Ветки
Дата начала   -   Крайний срок
-
Закрепить/Открепить
Приоритет
Участники(1)
1
https://api.gitlife.ru/oschina-mirror/linxyruffy-httpclient.git
git@api.gitlife.ru:oschina-mirror/linxyruffy-httpclient.git
oschina-mirror
linxyruffy-httpclient
linxyruffy-httpclient