среда, 10 июня 2009 г.

C++0x и NetBeans

Не совсем понравилось экпериментировать с возможностями нового стандарта С++ на Eclipse, а потому до сих пор искал альтернативу. Реальных причин для отказа было 2, хотя уже сейчас могу придумать значительно больше:

  1. Неудачно выбраный порт с GCC: зачем выбрал Cygwin до сих пор понять не могу. Наверное сыграл инстинкт пользователя :), который долго воспитывали в Windows - "больше весит - значит лучше".
  2. Глюки. Как-то непривык при входе в отладку простого приложения наблюдать креш среды разработки.
Ну и немного смущала заторможеность реакции среды на действия и слабая подсветка синтаксиса и подстановок по сравнению с Visual Studio/Visual Assist.

Сейчас вроде бы нашёл альтернативу, где смогу вволю поэкспериментировать. Инструкция для тех, кому, возможно, будет интересно поиграться с C++0x на NetBeans в Windows.

  1. Скачать и установить NetBeans IDE у кого эта IDE ещё не стоит или добавить плагин C++ в уже установленую NetBeans IDE (http://www.netbeans.org/)
  2. Скачать 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 собрать самому из исходников - тут уж у кого как душа поёт.
  3. Также необходимо скачать и установить MSYS последней версии - сайт MinGW тут уже сможет помочь. Необходимо это, потому что NetBeans не дружит с MinGW make идущим в MinGW по умолчанию, да и на сайте MinGW настоятельно рекомендуется использовать make из MSYS.

Теперь займёмся настройкой IDE:

  1. Запустить NetBeans IDE
  2. Выбрать Tools/Options/C++
  3. на закладке Build Tools настроить
  4. mingwsettings.JPG
  5. На закладке Code Assistance для C Compiler и C++Compiler надо нажать Reset settings для того, чтобы NetBeans IDE подхватило последнюю версию g++, а не расположеную в корне инсталяции MinGW. Почему не подхватить эти пути сразу - не знаю, наверное надо выделяться как-то на фоне Microsoft.
  6. migwincludes.JPG

Общие настройки IDE закончены - остались только изменения в проекте.

Теперь заголовки версии 4.4 подключаются в проект, но почему-то вся функциональность будущего стандарта не работает. Причина в том, что GCC требует включать эту поддержку дополнительной опцией, что в целом разумно, т.к. C++0x это ещё не утверждённый стандарт и работа с ним чревата изменениями, а потому строить production код на нём вряд ли кто-то будет. Выбрать настройки C++ проекта, перейти на группу C++ Compiler и поставить ввести "-std=gnu++0x" в Additional Options.

Комментариев нет:

Отправить комментарий