Не совсем понравилось экпериментировать с возможностями нового стандарта С++ на Eclipse, а потому до сих пор искал альтернативу. Реальных причин для отказа было 2, хотя уже сейчас могу придумать значительно больше:
- Неудачно выбраный порт с GCC: зачем выбрал Cygwin до сих пор понять не могу. Наверное сыграл инстинкт пользователя :), который долго воспитывали в Windows - "больше весит - значит лучше".
- Глюки. Как-то непривык при входе в отладку простого приложения наблюдать креш среды разработки.
Сейчас вроде бы нашёл альтернативу, где смогу вволю поэкспериментировать. Инструкция для тех, кому, возможно, будет интересно поиграться с C++0x на NetBeans в Windows.
- Скачать и установить NetBeans IDE у кого эта IDE ещё не стоит или добавить плагин C++ в уже установленую NetBeans IDE (http://www.netbeans.org/)
- Скачать MinGW порт c GCC версии 4.4. Выбрал MinGW, потому что он действительно min - весит меньше, а работает быстрее. На официальном сайте MinGW к сожалению последняя стабильная версия GCC ещё 3.4.5, кандидат 4.3., а нам нужна 4.4, в которой и сделана основная реализация фич из C++0x. Можно с взять с http://www.tdragon.net/recentgcc/ уже собраное с windows installer, а можно в классическом unix-way собрать самому из исходников - тут уж у кого как душа поёт.
- Также необходимо скачать и установить MSYS последней версии - сайт MinGW тут уже сможет помочь. Необходимо это, потому что NetBeans не дружит с MinGW make идущим в MinGW по умолчанию, да и на сайте MinGW настоятельно рекомендуется использовать make из MSYS.
Теперь займёмся настройкой IDE:
- Запустить NetBeans IDE
- Выбрать Tools/Options/C++
- на закладке Build Tools настроить
- На закладке Code Assistance для C Compiler и C++Compiler надо нажать Reset settings для того, чтобы NetBeans IDE подхватило последнюю версию g++, а не расположеную в корне инсталяции MinGW. Почему не подхватить эти пути сразу - не знаю, наверное надо выделяться как-то на фоне Microsoft.
Общие настройки IDE закончены - остались только изменения в проекте.
Теперь заголовки версии 4.4 подключаются в проект, но почему-то вся функциональность будущего стандарта не работает. Причина в том, что GCC требует включать эту поддержку дополнительной опцией, что в целом разумно, т.к. C++0x это ещё не утверждённый стандарт и работа с ним чревата изменениями, а потому строить production код на нём вряд ли кто-то будет. Выбрать настройки C++ проекта, перейти на группу C++ Compiler и поставить ввести "-std=gnu++0x" в Additional Options.
Комментариев нет:
Отправить комментарий