Рейтинг

  • Страница 1 из 1
  • 1

C++ Compiler VS or MinGW
[1] Dejig [29 Июля 2014, 11:09]
Привет всем! Хотелось бы узнать какие +/-
Visual C++ Compiler
MinGW

Хочу использовать Qt но там на выбор дается два компилятора, интересуюсь кроссплатформенной разработкой
[2] goldsphere [29 Июля 2014, 11:43]
MinGW, Visual только для Windows

Сообщение отредактировал goldsphere - Вторник, 29 Июля 2014, 11:44
[3] DragYourAssets [29 Июля 2014, 13:53]
Компилятор не имеет значения. MinGW - это порт GCC на Windows. VC++ и MinGW конечно отличаются между собой, например различной поддержкой стандарта С++ 11/14 (хотя в последней версии VC++ ее более-менее привели в порядок). Насчет кроссплатформенности: можно, конечно, запариться кросс-компиляцией (компиляция на одну ОС из-под другой), но легче просто компилировать под ОС, под которой сидишь. Энивей, на Windows все же лучше использовать VC++.
[4] Dejig [29 Июля 2014, 14:49]
Цитата DragYourAssets ()
Энивей, на Windows все же лучше использовать VC++.

А потом проект править под другой компилятор?
Вот я пишу игру на SDL, написал я ее на винде, потом хочу портануть под linux, мне по идее просто нужно либы SDL взять под линукс и все, но если я буду пилить на VS то мне же придется лезть в код и делать правки, что в случае с MinGW будет минимально я правильно понимаю?
[5] DragYourAssets [29 Июля 2014, 15:05]
Цитата Dejig ()
А потом проект править под другой компилятор?
Вот я пишу игру на SDL, написал я ее на винде, потом хочу портануть под linux, мне по идее просто нужно либы SDL взять под линукс и все, но если я буду пилить на VS то мне же придется лезть в код и делать правки, что в случае с MinGW будет минимально я правильно понимаю?

А что править-то, собственно? Наиболее нужные фичи С++ 11 поддерживаются и там, и там. И если ты делаешь игру на SDL, зачем тебе либы Qt, получается, что ты собираешься использовать от Qt лишь IDE, Qt Creator?
[6] Dejig [29 Июля 2014, 15:18]
Цитата DragYourAssets ()
что ты собираешься использовать от Qt лишь IDE, Qt Creator?

Да все верно

Цитата DragYourAssets ()
А что править-то, собственно?

пишут же что мелоксофт внедрила свои фичи в С++ аля #pragma once
[7] Xakep [29 Июля 2014, 15:18]
давно когда-то я писал под венду на VS а на линукс на gcc, в итоге у меня куча ошибок на одном из компиляторов было (может от недостатка опыта фиг знает), в итоге я пересел на MinGW, мне удобно, советую брать MinGW, т.к. это порт gcc и он один и на Linux и на FreeBSD и на MacOS (хотя официально на MacOS Clang стоит, но gcc там тоже можно поставить, кстати clang тоже можешь использовать как альтернативный компилятор) чем быстрее перейдешь на MinGW/Clang тем быстрее научишься всякие makefile'ы делать, что кстати очень нужно для кросплатформенной разработки.

Надо еще сказать, если перейдешь на MinGW то там много мороки с компиляцией библиотек может быть, хотя можно и бинарники готовые найти, если хорошенько поискать.


Сообщение отредактировал Xakep - Вторник, 29 Июля 2014, 15:20
[8] DragYourAssets [29 Июля 2014, 15:30]
Цитата Dejig ()
пишут же что мелоксофт внедрила свои фичи в С++ аля #pragma once

Она есть почти везде, в том числе и в MinGW, и в GCC. А вообще для кроссплатформенности тебе надо использовать CMake - с его помощью собираешь файлы проекта для любого компилятора и IDE. Можно использовать на Windows MSVC, а на линуксе - Qt Creator или Eclipse.
Цитата Xakep ()
makefile

Зачем делать мейкфайлы вручную, если есть CMake, опять же?
[9] Dejig [29 Июля 2014, 16:13]
Цитата DragYourAssets ()
Она есть почти везде, в том числе и в MinGW, и в GCC.

Но ведь MinGW поддерживает несколько платформ и его фичи будут компилятся на нескольких платформах

Цитата DragYourAssets ()
А вообще для кроссплатформенности тебе надо использовать CMake - с его помощью собираешь файлы проекта для любого компилятора и IDE.

Это для сборки но код то всеравно прийдется править под каждый компилятор?
[10] Wikke [29 Июля 2014, 16:22]
А может стоит просто писать правильный код и все?
Я пишу под Windows используя компилятор от M$, под линем у меня G++ ( 4.8.2 ) и весь контроль идет через git.

В итоге я в винде написал код, закоммитил, зашел в линь, сделал git clone, и make и тот же код собрался под линем без особых проблем.

P.S. всякие winapi не использую, поэтому и гемора с портом нету, а SDL везде один, так что не вижу проблемы.
[11] DragYourAssets [29 Июля 2014, 16:43]
Цитата Wikke ()

Это для сборки но код то всеравно прийдется править под каждый компилятор?

Нет, если не будешь использовать платформо-зависимые API типа WinAPI.
Цитата Wikke ()

Но ведь MinGW поддерживает несколько платформ и его фичи будут компилятся на нескольких платформах

MinGW поддерживает только Windows, кросс-компиляция - вещь геморная. И про какие фичи конкретно ты говоришь?
[12] Saitei [29 Июля 2014, 16:44]
Цитата Wikke ()
м нету, а SDL везде один, так что не вижу проблемы.

А вы случаем не работали с SDL2 под андроид? Очень интересная тема. Хочу попробовать, но проблемы (в основном туторы для Mac и Linux писались). Там урезанная версия SDL2 или полная?
[13] Wikke [29 Июля 2014, 18:26]
Цитата
А вы случаем не работали с SDL2 под андроид? Очень интересная тема. Хочу попробовать, но проблемы (в основном туторы для Mac и Linux писались). Там урезанная версия SDL2 или полная?


К сожалению под NDK ( вы ведь его имеете в виду? ) вообще никогда не работал. Просто нет желания) Мне и java части вполне хватает smile

  • Страница 1 из 1
  • 1