Я так понял, что для 64-бит есть несколько моделей: LP64, ILP64, LLP64. Я хотел бы спросить, какой из них используется с 64-битной Ubuntu (и gcc, используемый в этой Ubuntu)?
Ubuntu 64-бит это LP64?
comment
Привет, Паскаль, спасибо. Что такое командная строка для предоставления этой информации?
- person ransh   schedule 26.02.2015
Ответы (1)
Ответ заключается в том, что 64-разрядная версия Ubuntu предлагает компиляцию I32LP64.
Вы можете определить это для себя с помощью следующего кода:
$ cat t.c
#include <stdio.h>
#include <limits.h>
int main(void) {
printf("%zu %zu %zu\n",
CHAR_BIT*sizeof(int),
CHAR_BIT*sizeof(long),
CHAR_BIT*sizeof(void*));
}
$ gcc t.c && ./a.out
32 64 64
person
Pascal Cuoq
schedule
26.02.2015