Форум программистов, компьютерный форум, киберфорум
Наши страницы
C++: WinAPI
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
Pjeroo
Землянин
34 / 34 / 16
Регистрация: 15.01.2013
Сообщений: 313
#1

MSVC13 vs CodeBlocks (MinGW)

06.03.2014, 23:09. Просмотров 1084. Ответов 8
Метки нет (Все метки)

Под windows разрабатывать приложения лучше, конечно же, в MSVC, потому что там сто процентов все заголовки, связанные с Windows и WinApi есть. В MinGW с этим похуже, потому что сейчас у меня не нашелся atlbase.h, а за ним и куча куча зависимых заголовков. Но хоть и MSVC лучше в этом плане, он требует для запуска два .dll файла: msvcp120.dll, msvcr120.dll, что в некоторых ситуациях создает проблемы. Теперь собственно вопросы, а их несколько:

1. Можно ли сделать MSVC статическим? Т.е независящим от каких-либо библиотек? Если да, то как?
2. Что насчет кроссплатформенности C++ при работе в MSVC?
3. Можно ли собрать MinGW с полным набором либ и заголовков как в MSVC?
4. Что лучше?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
06.03.2014, 23:09
Ответы с готовыми решениями:

C++ 17 приняли! Как теперь быть текущей сборкой codeblocks+mingw ?
Я новичок совсем. Только вот начал только только изучать программирование....

Удаление Codeblocks/
После удаления Codeblocks значки *.cpp отображаются так. как будто Codeblocks...

Разбиение проекта CodeBlocks на файлы
В общем, такая проблема. Писал класс строки, вроде все работало, но вот когда...

Ошибка генерации CodeBlocks проекта CMake`ом
Пожалуйста, подскажите как правильно сгенерировать CodeBlocks проект с...

mingw и лицензия
Интересует следующий вопрос. Можно ли создавать ПО под лицензией, отличной от...

8
Убежденный
Ушел с форума
Эксперт С++
15954 / 7266 / 1178
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
06.03.2014, 23:18 #2
Лучший ответ Сообщение было отмечено Pjeroo как решение

Решение

Цитата Сообщение от Pjeroo Посмотреть сообщение
Можно ли сделать MSVC статическим? Т.е независящим от каких-либо библиотек? Если да, то как?
Настройки проекта -> C++ -> Code Generation -> Runtime Library.
Поставить значение "Multi-Threaded (/MT)". Конфигурация должна быть Release.
Либо положить в папку с exe файлы msvcrXX.dll и msvcpXX.dll.
В обоих случаях все достаточно тривиально и компактно.

Что насчет кроссплатформенности C++ при работе в MSVC?
MSVC - это Windows-only.
Кросс-платформенность достижима только на уровне исходного кода.
Например, если вы пишете, используя только стандартные и кросс-
платформенные средства типа STL и Boost, то ваш код с большими шансами
на успех заработает и на других платформах. MSVC тут не при чем.

Можно ли собрать MinGW с полным набором либ и заголовков как в MSVC?
Ну не знаю, а смысл ?
Удобно работать с ATL, к примеру, в MinGW не получится все равно.
Хотя бы по причине отсутствия "визардов", генерирующих код.

Что лучше?
Лучше чего ?
0
Pjeroo
Землянин
34 / 34 / 16
Регистрация: 15.01.2013
Сообщений: 313
06.03.2014, 23:38  [ТС] #3
Убежденный, оно? Больше точно ничего не надо делать? Какой тип проекта должен быть?
0
Миниатюры
MSVC13 vs CodeBlocks (MinGW)  
Убежденный
Ушел с форума
Эксперт С++
15954 / 7266 / 1178
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
06.03.2014, 23:42 #4
Оно самое. Тип проекта - Win32, консольное или оконное, не важно.
Для 80% случаев этого более, чем достаточно.
Оставшиеся 20% - это когда вы запускаете приложение на
какой-нибудь Win2K/WinXP, а там нет нужной функции.
Но это почти всегда виноват человек, а не "Студия".

Для запуска на XP там, кстати, специальный тулсет еще
должен быть выбран в настройках - то ли 110_xp, то ли как-то
еще называется. Не знаю, я этими "Студиями" новыми
не пользуюсь, ибо

Современная снайперская винтовка сейчас настолько совершенна,
что девяносто девять человек из ста не смогут воспользоваться
всеми возможностями, которые она предоставляет.
0
Pjeroo
Землянин
34 / 34 / 16
Регистрация: 15.01.2013
Сообщений: 313
06.03.2014, 23:49  [ТС] #5
Убежденный,
Оставшиеся 20% - это когда вы запускаете приложение на
какой-нибудь Win2K/WinXP, а там нет нужной функции.
В самих библиотеках Windows?

Не по теме:

Современная снайперская винтовка сейчас настолько совершенна,
что девяносто девять человек из ста не смогут воспользоваться
всеми возможностями, которые она предоставляет.
Вот уж действительно :)

0
Убежденный
Ушел с форума
Эксперт С++
15954 / 7266 / 1178
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
06.03.2014, 23:52 #6
Да.
Возможен такой вариант - вы написали программу, которая запускается
на Windows 8, на Windows 7, и даже на Vista без сервис-пака, а вот на
Windows XP не хочет, почему-то. И тогда вдруг оказывается, что она
пытается дергать функции из этого, например, списка:

Windows Vista (API by Release)
http://msdn.microsoft.com/en-us/library/aa383874%28VS.85%29.aspx

которые на XP отсутствуют.
0
Pjeroo
Землянин
34 / 34 / 16
Регистрация: 15.01.2013
Сообщений: 313
06.03.2014, 23:55  [ТС] #7
Убежденный, полагаю этот пункт Вы имели ввиду. Т.е если использовать его, то получится таки запустить под WinXP, но при этом .ехе наверное должен будет весить побольше обычного?
0
Миниатюры
MSVC13 vs CodeBlocks (MinGW)  
Убежденный
Ушел с форума
Эксперт С++
15954 / 7266 / 1178
Регистрация: 02.05.2013
Сообщений: 11,637
Записей в блоге: 1
Завершенные тесты: 1
07.03.2014, 00:19 #8
Да, тот самый пункт.
По поводу размера не знаю, скорее всего разница будет исчисляться килобайтами.
И еще неизвестно, в какую сторону.
1
_lunar_
1442 / 1359 / 184
Регистрация: 03.05.2011
Сообщений: 3,138
Завершенные тесты: 1
11.03.2014, 08:14 #9
Цитата Сообщение от Pjeroo Посмотреть сообщение
этот пункт
сколько не ставил в разных студиях этот пункт поддержка XP так и не появилась, т.е. на XP программа не запускалась, пока в hex редакторе не поменял major и minor с 0х6 на 0х5.
0
Миниатюры
MSVC13 vs CodeBlocks (MinGW)  
11.03.2014, 08:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.03.2014, 08:14

Mingw и windows.h
Возникла ошибка в том что mingw определяет мою систему без unicode, а windows.h...

mingw и lib
Как в mingw в коде подключить файл lib, #pragma comment(lib, "Gdi32.lib") не...

libcUrl с OpenSSL на MinGW
Помогите! Никак не могу разобраться с libcUrl с OpenSSL, просто libcUrl...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

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