Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
#1

Как компилить x64? - C++

22.11.2012, 11:51. Просмотров 1588. Ответов 38
Метки нет (Все метки)

У меня почему то sizeof(size_t)==4, а система windows 7 x64. Как с этим бороться?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.11.2012, 11:51     Как компилить x64?
Посмотрите здесь:

C++ C++ x86 и x64
Как компилить программу с libjpeg? C++
C++ Можно ли для винды компилить 64-х битный натив?
Как писать для x64? C++
Где взять и как подцепить к Code Blocks бесплатный компилятор x64 стандарта C++11 для Windows 7 x64? C++
C++ Как заставить компилятор не компилить неправильную программу?
C++ Как добиться возможности компилить с поддержкой нового стандарта в Code Blocks (MinGW)?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2012, 13:21  [ТС]     Как компилить x64? #21
А где это?

Добавлено через 1 минуту
Цитата Сообщение от vxg Посмотреть сообщение
по какой именно)
странный вопрос, ссылка вроде не через страницу.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
22.11.2012, 13:26     Как компилить x64? #22
taras atavin, у меня нет codeblocks, и не было, с ним я не знаю что и как. А переменную PATH можно изменить в вкладке Свойство системы, кликнув по кнопке Переменные среды.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2012, 13:32  [ТС]     Как компилить x64? #23
В самой среде? Нет, это уже слишком.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
22.11.2012, 13:50     Как компилить x64? #24
taras atavin, а как по Вашему запускаются компиляторы из командной строки?
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2012, 14:02  [ТС]     Как компилить x64? #25
Цитата Сообщение от taras atavin Посмотреть сообщение
В самой среде? Нет, это уже слишком.
То есть в самой системе слишком. Вот если бы в среде разработки.
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.11.2012, 14:51     Как компилить x64? #26
Здесь пропишите путь к компилятору. Может быть ниже нужно выбрать файлы .exe, этого не знаю, пробуйте.
Миниатюры
Как компилить x64?  
Kastaneda
Форумчанин
Эксперт С++
4470 / 2832 / 224
Регистрация: 12.12.2009
Сообщений: 7,202
Записей в блоге: 1
Завершенные тесты: 1
22.11.2012, 15:17     Как компилить x64? #27
А что дизассемблер говорит? Какой код реально компилится? потому что sizeof(size_t) == 4 вообще не показатель чего либо.
alsav22
5415 / 4811 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
22.11.2012, 15:21     Как компилить x64? #28
Цитата Сообщение от Kastaneda Посмотреть сообщение
потому что sizeof(size_t) == 4 вообще не показатель чего либо.
В VC, при переключении компилятора на x64, выдаёт 8.
Kastaneda
Форумчанин
Эксперт С++
4470 / 2832 / 224
Регистрация: 12.12.2009
Сообщений: 7,202
Записей в блоге: 1
Завершенные тесты: 1
22.11.2012, 15:33     Как компилить x64? #29
Это личное дело VC
Вот из мануала по gcc
-m32
-m64
Generate code for a 32-bit or 64-bit environment. The 32-bit environment sets int, long and pointer to 32 bits and generates code that runs on any i386
system. The 64-bit environment sets int to 32 bits and long and pointer to 64 bits and generates code for AMD's x86-64 architecture. For darwin only the
-m64 option turns off the -fno-pic and -mdynamic-no-pic options.
про size_t ни слова.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
22.11.2012, 15:39     Как компилить x64? #30
Цитата Сообщение от taras atavin Посмотреть сообщение
Скачал по этой ссылке, он поставился в c:\mingw\, но не подхватился. Что я не так сделал?
Скомпилить из командной строки никак?
gray_fox
What a waste!
1256 / 1139 / 55
Регистрация: 21.04.2012
Сообщений: 2,361
Завершенные тесты: 3
22.11.2012, 15:48     Как компилить x64? #31
Цитата Сообщение от Kastaneda Посмотреть сообщение
Какой код реально компилится?
Ничего у него не компилилось. -m64 - "not implemented".
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2012, 15:54  [ТС]     Как компилить x64? #32
Цитата Сообщение от Kastaneda Посмотреть сообщение
Какой код реально компилится?
весь. Только он получается x32.
Цитата Сообщение от Kastaneda Посмотреть сообщение
потому что sizeof(size_t) == 4 вообще не показатель чего либо.
Это как? size_t - мемсайзный тип, гарантирующий достаточность для счёта элементов любого динамического массива. Если не веришь, скину файлик, выводящий ещё и sizeof(void *).
Kastaneda
Форумчанин
Эксперт С++
4470 / 2832 / 224
Регистрация: 12.12.2009
Сообщений: 7,202
Записей в блоге: 1
Завершенные тесты: 1
22.11.2012, 15:58     Как компилить x64? #33
Вот, что нашел
C++
1
2
3
///usr/lib/gcc/i686-linux-gnu/4.6.3/include/stddef.h:
#define __SIZE_TYPE__ long unsigned int
typedef __SIZE_TYPE__ size_t;
судя по этому (и вышепреведенной цитате из мана), можно утверждать, что size_t в 64 битном коде будет 64 бита, но это утверждение верно только для gcc4.6.3. Про остальные ни чего утверждать нельзя, пока сам не увидешь (конечно в других версиях будет так же, но это лишь смелое предположение, а не утверждение)
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.11.2012, 16:01  [ТС]     Как компилить x64? #34
Цитата Сообщение от Kastaneda Посмотреть сообщение
судя по этому (и вышепреведенной цитате из мана), можно утверждать, что size_t в 64 битном коде будет все таки 64 бита.
А у меня 32.
MrGluck
Ворчун
Эксперт CЭксперт С++
6676 / 3857 / 511
Регистрация: 29.11.2010
Сообщений: 10,217
22.11.2012, 16:24     Как компилить x64? #35
taras atavin, вот пути в CB для компилера:
Как компилить x64?
Auto-detect не нажимайте, и убедитесь, что он папку с путями не скинул на дефолтную. Все файлы лежат в mingw/bin.
Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
22.11.2012, 16:39     Как компилить x64? #36
Размер size_t обязан умещать максимальное возможное теоретическое значение адреса памяти для данной системы.
Цитата Сообщение от Kastaneda Посмотреть сообщение
///usr/lib/gcc/i686-linux-gnu/4.6.3/include/stddef.h:
#define __SIZE_TYPE__ long unsigned int
typedef __SIZE_TYPE__ size_t;
В NIX`ах unsigned long в 64 битной системе равен 8 байтам, в Win64 же 4 байта. Поэтому, скорей всего, в MinGW64 имеет такое определение типа:
C++
1
typedef unsigned long long int size_t;
Цитата Сообщение от taras atavin Посмотреть сообщение
А у меня 32.
У Вас 32 потому что Вы компилируете 32 битное приложение а не 64 битное.
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.12.2012, 12:36  [ТС]     Как компилить x64? #37
-------------- Clean: Debug in sizes ---------------

Cleaned "sizes - Debug"

-------------- Build: Debug in sizes ---------------

Compiling: sizes.cpp
Linking console executable: bin\Debug\sizes.exe
obj\Debug\sizes.o: file not recognized: File format not recognized
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 2 seconds)
0 errors, 0 warnings
Jupiter
Каратель
Эксперт С++
6550 / 3970 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
22.12.2012, 14:30     Как компилить x64? #38
Цитата Сообщение от taras atavin Посмотреть сообщение
-------------- Clean: Debug in sizes ---------------
Cleaned "sizes - Debug"
-------------- Build: Debug in sizes ---------------
Compiling: sizes.cpp
Linking console executable: bin\Debug\sizes.exe
obj\Debug\sizes.o: file not recognized: File format not recognized
collect2: ld returned 1 exit status
Process terminated with status 1 (0 minutes, 2 seconds)
0 errors, 0 warnings
и что вы хотите этим сказать?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.12.2012, 15:11     Как компилить x64?
Еще ссылки по теме:

C++ есть ли компилятор для андроида? на планшете хочу компилить
C++ Как заставить код работать на x32 и x64?
Чем дебажить x64? C++
C++ Как в x64 декларирован тип SIZE?
Как правильно брать координаты курсора по событию WM_LBUTTONDOWN в x64? C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
taras atavin
Ушёл с форума.
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
22.12.2012, 15:11  [ТС]     Как компилить x64? #39
Эту гогу среда пишет после попытки подцепить новый MinGW.
Yandex
Объявления
22.12.2012, 15:11     Как компилить x64?
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru