LINUX.ORG.RU

C++


366

17

Всего сообщений: 235

Вышла среда разработки Code::Blocks 10.5

Группа Open Source

После двух лет разработки вышел новый стабильный выпуск (10.5) популярной кросс-платформенной среды разработки на языках C/C++/D и других.

Лицензия GPLv3, выпускается для ОС Linux, Mac, Windows (сама IDE написана на C++, для GUI используется wxWidgets), для расширения функциональности используется механизм плагинов.

Поддерживается множество разных компиляторов: GCC (MingW / GNU GCC), MSVC++, Digital Mars, Borland C++ 5.5, Open Watcom, и другие.

Встроенная быстрая система сборки проектов без использования Makefile с развитой, гибкой системой настроек сборки проекта, возможна параллельная сборка в несколько потоков. Поддерживаются зависимости между проектами в рабочем окружении.

Поддерживаются отладчики GNU GDB и MS CDB.

Возможен импорт проектов из MSVC и Dev-C++.

Имеется удобный редактор кода с подсветкой синтаксиса, автодополнением, сверткой блоков кода, и другими полезными функциями.

>>> Подробности

 , , , ,

EtherealPhantom
()

Разрешено использование C++ в GCC

Группа GNU's Not Unix

Вчера в списке рассылки GCC появилось важное сообщение по поводу использования языка программирования C++ при разработке GCC (GNU Compiler Collection, а не сам компилятор языка C).

Марк Митчелл (Mark Mitchell), один из основных разработчиков GCC:

Я рад сообщить, что руководящий комитет GCC и FSF одобрили использование C++ в самом GCC. Конечно, нет никаких причин использовать возможности С++ только потому, что мы умеем это делать. Главная цель - предоставить пользователям более качественные компиляторы, а не кодовую базу на C++ для самих себя.

Перед тем, как мы действительно начнём использовать C++, мы должны определиться с набором правил, которыми нужно будет руководствоваться при использовании C++ для разработки GCC. Я считаю, что для начала мы должны минимизировать список разрешённых возможностей С++, чтобы не подвергать разработчиков GCC, не знакомых с C++, таким резким переменам в основном языке разработки компиляторов. Мы всегда сможем расширить использование С++ позднее, если появится такая необходимость.

На данный момент разработчики ограничиваются стандартом C++98 и использованием типа long long для 64-битных целых чисел. Использование множественного наследования, шаблонов (тех, которые не входят в стандартную библиотеку C++) и исключений, скорее всего, будет запрещено. Это мотивировано тем, что это будет сложно для программистов на C, а также тем, что сами программисты C++ могут с лёгкостью допустить ошибки в таких вещах.

Так как язык C++ достаточно обширен, то Марк Митчелл предложил составить список того, что разрешается использовать, а не того, что использовать нельзя. На данный момент необходимо составить некоторые информационные нормативы, а не очередной стандарт ISO.

Все желающие поучаствовать в разработке нормативов могут связаться с разработчиками GCC. На данный момент предполагается сделать это в виде странички в Wiki.

>>> Официальный анонс

 , , , , ,

MuZHiK-2
()

KDevelop 4.0

Группа KDE

Сегодня состоялся релиз интегрированной среды разработки KDevelop, первый с момента выхода KDE4.

Основные усилия разработчиков при подготовке данного релиза были направлены на создание отличной IDE для C++. Но это не значит, что другие языки не будут поддерживаться, расширения для них будут добавлены позже. Сейчас в svn доступны расширения для C#, CSS, Erlang, Java, Python и других языков.

Основные возможности:

  • Навигация с быстрым переходом по объявлениям и семантической подсветкой кода
  • Проверка синтаксиса и полуавтоматическое исправление кода
  • Автодополнение классов, функций, шаблонов, переменных и объявлений о включении заголовочных файлов
  • Для разработчкиков, использующих Qt, реализована поддержка механизмов сигнал-слот с автозаполнением
  • Поддержка CMake, редактирования Makefile'ов, автодополнения и подсветки кода в файлах CMake, полуавтоматического добавления созданных классов в CMake-файлы, автоматического перехода к участку кода по ошибке
  • Поддержка GDB, позволяющая устанавливать точки остановки, пошаговый переход и просмотр текущего стека вызовов. Также доступен вывод типов Qt, KDE и STL в читаемом формате
  • Интеграция документации: встроенная документация для CMake и Qt, всплывающие подсказки для классов и функций, показ полной версии документации с помощью toolview
  • Интеграция с SVN
  • Поддержка сессий
  • Автоматическое форматирование кода
  • Поиск по файлам

Одновременно было выпущено расширение для PHP, предоставляющее базовые возможности для веб-разработчика:

  • Семантический анализ кода и ошибок, включая комментарии PHP Doc для подсказок о параметрах и возвращаемых значений
  • Автодополнение кода с поддержкой ООП
  • Подсветка кода и его контекстный просмотр
  • Поддержка отображения документации по параметрам и возвращаемым значениям с сайта PHP.net

>>> Подробности

 , , , , ,

madgnu
()

Вышел релиз CGAL 3.6

Группа Open Source

Вышел новый релиз CGAL ( Computational Geometry Algorithms Library, библиотека алгоритмов вычислительной геометрии ).

Основные изменения:

  • трёхмерная периодическая триангуляция; теперь можно использовать CGAL для расчёта периодических альфа переходов;
  • генерация трёхмерной сетки; в генератор сетки была добавлена фаза оптимизации, что позволило добавить генерацию трёхмерной сетки с использованием правильного тетраэдра (well shaped tetrahedra);
  • алгебраическое ядро (новый пакет); содержит алгоритмы для нахождения, оценки и сравнения реальных корней одномерных (univariate) и двумерных (bivariate) систем полиномов.

CGAL распространяется под лицензиями LGPL и QPL (Qt Public License).

Официальный сайт.

>>> полный список изменений

 , , , ,

shty
()

FIFE 0.3.0

Группа Игры

Выпущена новая версия кроссплатформенного 2D фреймворка FIFE(Flexible Isometric Free Engine) для создания игр, написанного на C++ и Python. Для использования FIFE достаточно знать Python, а если он по каким-то причинам не подходит, то можно использовать C++.

Наиболее важные изменения:

  • Теперь используется Python 2.6
  • Добавлена поддержка UTF-8
  • Переделана scons build system
  • Редактор полностью переписан и поддерживает плагины и.т.д.

Скриншоты.

>>> Подробности

 , , ,

Correctnoe_imya_polzovatelya
()

ABI Compliance Checker

Группа Open Source

ABI-compliance-checker - это легковесная утилита для проверки обратной бинарной совместимости разделяемых библиотек, написанных на C/C++ для ОС Linux. Она проверяет сигнатуры интерфейсов и определения типов в двух версиях какой-либо библиотеки и ищет изменения в ABI, которые могут привести к несовместимости. Нарушение совместимости может привести к падениям или некорректной работе программ, собранных со старой версией библиотеки, но запущенных с новой версией. Кроме этого, данную утилиту можно использовать и для проверки прямой совместимости (forward binary compatibility), а так же для проверки соответствия ABI библиотек, расположенных на разных машинах.

ABI-compliance-checker предназначен для разработчиков библиотек, которые заинтересованы в обеспечении обратной совместимости своих библиотек. Можно использовать по условиям лицензии GPLv3 или любой более поздней версии на ваш выбор =).

Скачать: (последние версии)

>>> Подробности

 , , , ,

Deleted
()

Как оптимизировали программу на Ocaml

Группа Документация

По ссылке приведены примеры программ с соревнований на ICFPC'09 (кстати, самим по себе интересными тем, что участники соревновались в управлении космическими аппаратами) которые демонстрируют как оптимизационные возможности, свойственные функциональным языкам (в частности хвостовая рекурсия), позволяют написанной на нём программе-интерпретатору некоего языка управления двигателем космического аппарата обогнать по скорости работы аналогичную на C/C++.

>>> Подробности

 , , ,

anonymous_incognito
()

Представлена первая версия проекта LinuxTools — IDE для C/C++, основанной на Eclipse CDT

Группа Linux General

LinuxTools — основанный на Eclipse CDT проект, который предназначен стать «полнофункциональным IDE для разработки C/C++», в первую очередь для Linux-разработчиков.

LinuxTools включает в себя:

  • Интеграцию с GNU Autotools;
  • Поддержку valgrind;
  • OProfile.

В перспективах поддержка RPM, Systemtap. Также планируется рассмотрение идеи включения Eclipse и плагинов в различные дистрибутивы Linux.

>>> Подробности

 , ,

fukazzz
()

Objective-C для программистов C++

Группа Документация

Опубликован перевод цикла из трех статей, посвященных языку Objective-C. В цикле рассматриваются множество возможностей этого языка, в том числе и «продвинутые». Приводятся соответствующие аналогии (в случае наличия таковых) из языка C++.

>>> Перевод цикла

 ,

n0xi0uzz
()

HOWTO по работе с С++ классами из Perl'a

Группа Документация

Выложена статья по работе из Perl'a с классами С++. В качестве примеров используются классы библиотеки QtCore из Qt4.

Первоначально статья опубликована в LinuxFormat № 11 за 2007. Этот вариант дополнен примерами и парой разделов, т.к. уже не стояло ограничений на размер.

>>> статья

 , , ,

vadiml
()

Открыты исходники Qt Eclipse Integration for Linux под лицензией GPL

Группа Open Source

Продолжая традицию выпуска софта под двумя лицензиями: коммерческой и открытой, стали доступны исходники плагина для разработки под Qt в Eclipse/CDT (пока только версия для Linux) под лицензией GPL. Плагин Qt Eclipse Integration позволяет упростить разработку и отладку программ, написанных на C++ и Java с использованием библиотек Qt.

Скачать: http://trolltech.com/developer/eclips...

>>> Подробности

 , , , ,

Deleted
()

Ultimate++ 2008.1 (Default)

Группа Open Source

Ultimate++ — кросс-платформенная среда быстрой разработки приложений на C++. Она включает в себя набор библиотек (для GUI и SQL) и интегрированную среду разработки. Из новшеств можно отметить новую, очень быструю реализацию String/WString. Также повышена производительность, улучшена поддержка многопоточности и унифицирована поддержка drag and drop, введена поддержка PostgreSQL, поддержка Win64 (за исключением отладчика).

На сайте можно скачать готовые deb-пакеты для платформ i386 и AMD64 (11 MB) или в виде исходных кодов (8 MB).

>>> Подробности

 , , ,

Bod
()

Intel обновил библиотеку для работы с мультиядрами в C++

Группа Open Source

Intel выпустил новую версию Linux-совместимой, открытой библиотеки для разработки мультиядерного ПО на C++. В версии 2.1 Intel Threading Building Blocks (TBB) улучшена производительность, добавлен портируемый механизм родственных процессов, улучшен планировщик заданий для более легкой разработки GUI, сетевого I/O и искусственного интеллекта.

Анонсированная в прошлом июле под лицензией "GPLv2 с дополнениями", TBB является кросс-платформенной библиотекой, которая служит для повышения производительности C++ приложений на мультиядерный процессорах. Она портирована на GNU/Linux, MacOS X, Windows и Solaris. TBB включает планировщик заданий, аллокатор памяти и счетчик времени, наряду с различными алгоритмами параллелизации, thread-safe контейнерами и примитивами синхронизации.

Также добавлены новые компоненты:

  • tbb_threadabstraction,
  • parallel_do,
  • tbb_allocator,
  • blocked_range3d,
  • recursive_mutex.

>>> Подробности

 , ,

phasma
()

Интервью с Бьярном Страустрапом

Группа Open Source

Бьярн Страустрап, автор одного из наиболее широко используемых и успешных языков программирования — C++, пару дней назад дал 8-страничное интервью computerworld.com.au, где рассказал то, что программистам полезно знать о C++:

  • его историю,
  • развитие языка в настоящее время,
  • и его будущее.

>>> Подробности

 ,

Valeriy_Onuchin
()

Опубликована библиотека CntmLib (C++)

Группа Open Source

CntmLib предоставляет средства для:

  • управления временем жизни объектов с помощью подсчета ссылок;
  • синхронизации в многопоточных системах. Есть интеграция с библиотекой Qt3 в области синхронизации;
  • взаимодействия объектов через механизм событий/подписки на события. Реализованы синхронные и асинхронные события;
  • асинхронного выполнения методов объектов. Имеется возможность передавать произвольные аргументы и получать результат выполнения;
  • работы с потоками.
  • имеется довольно подробная документация.

>>> Описание

 , ,

anonymous
()