crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> MinGW32 error: `LONGLONG' does not name a type
Litkevich Yuriy
  опции профиля:
сообщение 29.10.2010, 17:40
Сообщение #1


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Есть файл у MinGW32 - strmif.h
в нём есть строка:
typedef LONGLONG REFERENCE_TIME;
компиллер ругается так:

Цитата
error: `LONGLONG' does not name a type
и я что-то тоже не припомню такого типа в Си/Си++

В файле нет ни одного инклюда :unknown:
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 29.10.2010, 17:46
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2939
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


знаковое целое 64 бита

typedef __int64 LONGLONG;


Правда, это из WinNT.h :)

Сообщение отредактировал Алексей1153 - 29.10.2010, 17:54
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 29.10.2010, 18:24
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(Litkevich Yuriy @ 29.10.2010, 20:40) *
В файле нет ни одного инклюда
Цитата(Алексей1153 @ 29.10.2010, 20:46) *
Правда, это из WinNT.h
стало быть до strmif.h нужно инклюдить ещё один файл?
Странно как-то. Почему в сам strmif.h не добавили нужный инклюд
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
maint
  опции профиля:
сообщение 29.10.2010, 18:29
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 235
Регистрация: 3.8.2009
Из: Иркутск
Пользователь №: 982

Спасибо сказали: 28 раз(а)




Репутация:   2  


Цитата(Алексей1153 @ 29.10.2010, 23:46) *
знаковое целое 64 бита

typedef __int64 LONGLONG;


Правда, это из WinNT.h :)

LONGLONG определен для MinGW только в файле winnt.h, того же mingw :)
#if defined(_HAVE_INT64) || (defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64)
typedef __int64 LONGLONG;
typedef unsigned __int64 DWORDLONG;
#else
typedef double LONGLONG,DWORDLONG;
#endif


Цитата(Litkevich Yuriy @ 30.10.2010, 0:24) *
Цитата(Litkevich Yuriy @ 29.10.2010, 20:40) *
В файле нет ни одного инклюда
Цитата(Алексей1153 @ 29.10.2010, 20:46) *
Правда, это из WinNT.h
стало быть до strmif.h нужно инклюдить ещё один файл?
Странно как-то. Почему в сам strmif.h не добавили нужный инклюд

скорей всего из-за платформозависимости

Сообщение отредактировал maint - 29.10.2010, 18:28
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Iron Bug
  опции профиля:
сообщение 29.10.2010, 18:35
Сообщение #5


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


смотри код заголовочников мингва. скорее всего, у тебя просто не указаны какие-то нужные ему макросы для твоей оси.

Сообщение отредактировал Iron Bug - 29.10.2010, 18:35
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 28.3.2024, 21:43