LINUX.ORG.RU

C++


362

17

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

Eclipse 4.8.0 Photon

Группа Open Source

27 июня вышла новая версия Eclipse 4.8.0 Photon. Eclipse - платформа для построения IDE, включающая в себя плагины для поддержки разработки на разных языках. По словам Майка Милинковича, исполнительного директора Eclipse Foundation, задача Eclipse Photon - расширение многоязычных возможностей Eclipse за счет взаимодействия по протоколу LSP (Language Server Protocol), через который предоставляются поддержка редактирования кода на современных языках (в Eclipse поддерживается LSP версии 3.6 и Debug Adapter protocol 1.25).

Обновления плагинов:

В состав Eclipse включен плагин для поддержки разработки на Rust - Eclipse Corrosion 0.1.0 (первый языковый плагин, построенный на взаимодействии по LSP).

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

 , , , ,

tailgunner
()

Открыт исходный код компилятора C++ Zapcc

Группа Разработка

Zapcc — компилятор языка C++, основанный на наработках LLVM/Clang, данный компилятор отличается высокой скоростью компиляции из-за применения активного кеширования в различных этапах сборки программы. Данный компилятор может выступать в качестве замены gcc и clang, также он поддерживает интеграцию с любыми системами сборок. Исходный код был открыт под лицензией LLVM и располагается на GitHub.

Данный компилятор заметно ускоряет компиляцию C++, но для C это не настолько заметно, к примеру сборка Boost.Math производится в 10 раз быстрее чем у clang, сборка Webkit происходит в 2-4 раза быстрее, сборка Clang при помощи Zapcc выполняется в два раза быстрее, чем самим Clang.

Высокая скорость компиляции достигается применением zapccs, непосредственно выполняющего компиляцию и поддерживающего в оперативной памяти кэш компиляции, в котором между разными запусками сохраняется информация о всех этапах сборки.

Сборка Boost.Math

Сборка WebKit

Официальный сайт проекта

Репозиторий на GitHub

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

 , , ,

playX
()

Вышел новый C++ API для PostgreSQL - PostgreSQL Frontend (Pgfe)

Группа Open Source

Новый C++ API для PostgreSQL (в стадии «бета») представлен в публичный доступ.

Основные возможности включают:

  • возможность работы с соединениями обычным и неблокирующим нити способом
  • возможность работы с подготовленными выражениями (prepared statements) и с именованными параметрами в них
  • возможность работы с кодами ошибок SQLSTATE (так же просто, как с обычными enum'ами)
  • динамическое создание SQL-запросов
  • расширяемая поддержка преобразований данных разных типов (включая преобразования массивов PostgreSQL в контейнеры STL и обратно)

Запланированы также следующие возможности:

  • поддержка Large Objects через потоки ввода/вывода стандартной библиотеки C++
  • поддержка команды COPY
  • поддержка работы с SQL отдельно от кода C++
  • поддержка работы с композитными типами данных
  • поддержка работы с массивами переменных размерностей

Ссылки:

Документация Pgfe

Страница проекта Pgfe на GitHub

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

 ,

anonymous
()

GCC 8.1

Группа GNU's Not Unix

Спустя намеченный год после выхода предыдущего мажорного выпуска «Коллекции компиляторов ГНУ» [0], увидел свет GCC 8.1. Разработчики обещают свежие возможности и более жесткую оптимизацию.

( читать дальше... )

>>> info-gnu@gnu.org

 , c++2a, , ,

Zmicier
()

Конференция C++ Russia 2018 в Санкт-Петербурге

Группа Конференции и встречи

Хао, бледнолицые!

19-21 апреля в Санкт-Петербурге пройдёт конференция C++ Russia. Ещё больше трэша и угара в этом году: Jon Kalb, Andrei Alexandrescu, Антон Полухин, Ivan Čukić, Михаил Матросов и другие докладчики. Обсудим новый стандарт, сборку и отладку C++ проектов, функциональный подход (кто сказал Haskell?!), модель памяти, конкурентность и параллелизм и много-много другой боли.

Первый день конференции (19 апреля) посвящен мастер-классам. Шесть часов интенсивной C++ терапии от лучших собако^W специалистов. На мастер-класс вы приходите с ноутбуком и платите за то, чтобы писать код: отличное развлечение для всей семьи!

Вечером первого дня организуется ужин с докладчиками: этакий social event на буржуйский манер. Покупаете билет и можно не просто придти поесть, а объяснить докладчикам в чем они не правы (например, Александреску).

Конференция пройдет в гостинице Прибалтийская, что по адресу Санкт-Петербург, ул. Кораблестроителей, 14.

До встречи на конференции!

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

 , ,

sermp
()

Code::Blocks 17.12

Группа Разработка

30 декабря 2017 г., спустя 2 года разработки, вышла новая версия Code::Blocks 17.12 - среды разработки на языках С, С++, D (теперь и для него, с ограничениями) и Fortran.

Данный выпуск, как всегда, содержит множество исправлений ошибок, улучшений и новых возможностей.

Среди них, например, для компонента «Core/UI» можно отметить:

  • editor: Исправление ошибки копирования/вставки средней кнопкой мыши при использовании wxGTK2.8.
  • editor: Вставка новой строки перед и после текущей строки, если она без выравнивания.
  • editor: В компоненте UpdateUI поведение при использовании 'Select next occurrence' и 'Select skip to next occurrence' (вероятно, имеется ввиду инструмент «мультикурсор») сделано более логическим.
  • lexer: Добавлено несколько новых ключевых слов в лексический анализатор языка Fortran.
  • Добавлен множественный выбор в диалоге «Copy to...» при поиске директорий (Search Directories).
  • editor: Добавлено переключение между заголовочными файлами и реализацией для шаблонов (.tpp;.tcc . <-> .h;.hpp).
  • Добавлена возможность переименовывать виртуальные каталоги через меню.
  • Добавлена возможность выбора используемой схемы подсветки синтаксиса в соответствующем меню в строке статуса.

И многое другое, в том числе улучшения для автодополнения кода, взаимодействия с компиляторами, отладчиком и других компонентов.

Бинарные сборки в виде tar-архивов подготовлены для Debian {9,10}, Fedora {26-28} и CestOS 7.

Полный список основных изменений приведён по ссылке в «Подробностях».

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

 , , ,

grem
()

Вышел Boost 1.66

Группа Разработка

Boost — кроссплатформенный набор библиотек C++ для разных задач.

Новые библиотеки:

  • Beast — реализация протоколов HTTP/1 и WebSocket поверх Asio;
  • CallableTraits — интроспекция и модификация callable types, наследник Boost.FunctionTypes;
  • Mp11 — библиотека метапрограммирования на основе C++11.

Из прочих изменений можно отметить:

  • Asio — API изменен в соответствии с Networking TS;
  • Atomic — новые экспериментальные операции fetch_negate, <op>_and_test, bit_test_and_set и другие;
  • Stacktrace — улучшена поддержка MinGW;
  • Thread — новые экспериментальные методы promise: set_value_deferred/set_exception_deferred.

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

 ,

anonymous
()

Platform-Independent Primitives (PIP)

Группа Разработка

PIP — кроссплатформенная легковесная библиотека под C++ (99), упрощающая написание консольных программ. Представляет собой связный набор классов, макросов и функций, которые значительно упрощают написание кода во многих прикладных областях. Основной упор в библиотеке сделан на функциональность, конфигурируемость и минимизацию конечного кода.

( читать дальше... )

>>> Скачать

 , , , ,

peri4
()

C++ User Group, встреча в Москве

Группа Конференции и встречи

Бонжур, лез ами!

C++ User Group начинает проводить регулярные встречи в Москве по примеру Санкт-Петербурга: одна встреча каждый месяц-полтора. На каждой встрече от одного до трёх докладов, каждая встреча в офисе какой-нибудь доброй компании, которая согласится пустить в гости.

Первая встреча пройдет 6 ноября в офисе Align Technology. На встрече будет три доклада. Откроет встречу специальный гость — Sean Parent — ведущий научный сотрудник (principal scientist) и архитектор ПО из Adobe.

Зарегистрироваться на встречу можно здесь.

Программа встречи

  • 14:00 — регистрация;
  • 14:30 — Sean Parent, «Better Code: Human interface»;
  • 16:00 — Mikhail Matrosov, «Daily C++: algorithms and iterators»;
  • 17:30 — Anton Tokar, «Boost::multi_index debug visualization in Visual Studio».

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

 , ,

sermp
()

Google представил открытую библиотеку Abseil для разработчиков на C++

Группа Google

В понедельник Google выпустил исходные коды библиотеки Abseil, созданной для того, чтобы значительно дополнить стандартную библиотеку языка C++. Данный код на протяжении многих лет использовался как базовая библиотека при разработке закрытого ПО, но был вынесен в отдельный открытый проект для упрощения открытия исходных кодов и разработки других библиотек, например, protobuf, grpc и tensorflow. Код распространяется под лицензией Apache 2.0.

Библиотека собирается с помощью bazel — системы сборки с открытым кодом, которая используется в Google. Данная система сборки позволяет точно контроллировать зависимости и получать воспроизводимые артефакты, но достаточно неудобна для повседневного использования. Но библиотека предполагает статическую линковку, так что её интеграция в любую систему сборки будет тривиальной.

Интересные части библиотеки:

  • absl::Mutex — примитив синхронизации, который одновременно может служить мьютексом, condition variable и read-write-блокировкой. Данный класс был разработан до появления C++11, но не был заменён std::mutex и его аналогами, так как предоставляет менее ошибкопорождающий интерфейс.
  • Бекпорты некоторых возможностей C++14/C++17 для компиляторов, поддерживающих только C++11: absl::make_unique, absl::optional, absl::any, absl::span, absl::string_view. При этом при сборке новым компилятором большинство absl:: типов будут обычным typedef для библиотечных.
  • «Стандартный» набор функций работы со строками: split, join, replace, объединение строк, перевод чисел в строки и обратно.
  • Функции и классы для работы с временем и промежутками времени (по сути дублирующие аналоги из std::chrono); 128-битный целочисленный тип данных; InlinedVector, позволяющий хранить маленькие массивы без выделения памяти; и прочее.

В данный момент список не очень большой, но библиотека постоянно будет дополняться.

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

 , , ,

vzzo
()

C++ Siberia 2017

Группа Конференции и встречи

В Томском государственном университете 24–26 августа пройдёт конференция «C++ Siberia 2017».

Описания докладов и расписание есть на официальном сайте. После проведения конференции там появятся слайды и видео выступлений.

Стоимость билетов:

  • на основную программу — 2500 ₽;
  • на мастер-класс — 3000 ₽.

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

 , ,

sermp
()

Eclipse IDE 4.7 (Oxygen)

Группа Java

Состоялся релиз Eclipse IDE 4.7 (Oxygen Edition). Изменения коснулись более 80 проектов, входящих в Eclipse Foundation.

( читать дальше... )

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

 , ,

Yilativs
()

Игровой движок FIFE 0.4.1

Группа Разработка

Вышел FIFE 0.4.1. FIFE (Flexible Isometric Free Engine, гибкий изометрический свободный движок) — это свободный и кроссплатформенный 2D игровой движок, включающий в себя такие возможности, как средства для построения графического интерфейса игры, поддержку аудио, работу с освещением, редактор карт, построение пути (pathfinding), виртуальную файловую систему. С помощью FIFE возможна разработка игр на Python или C++. Именно на этом движке была создана популярная свободная стратегическая игра Unknown Horizons.

В новой версии были добавлены такие возможности, как менеджер анимаций, возможность обрабатывать движения колёсиком мыши вправо-влево (а также клавиш F*), расширение возможностей использования XML-структур и другие функции. Также было исправлено несколько ошибок — например, ошибка, при которой при сохранении карты с помощью MapSaver была невозможна перезапись файла.

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

 , fife, ,

the_electric_hand
()

Конференция C++ Russia 2017, Москва

Группа Конференции и встречи

Алоха!

24–25 февраля 2017 в Москве пройдет крупнейшая в России C++ конференция.

Темы: Core Guidelines, GSL, boost, Qt, функциональщина, сопрограммы, C++17, многопоточность, специфика различных компиляторов, изменение кода большого проекта и много другой боли.

В этом году перед конференцией пройдет день мастер-классов: Ivan Cukic «Applied functional programming in C++», Rainer Grimm «Embedded programming with modern C++» и Павел Филонов «Continuous integration для C++ разработчика».

>>> Подробности и регистрация на сайте

 , ,

sermp
()

Бесплатная лицензия PVS-Studio для открытых проектов

Группа Проприетарное ПО

Разработчики PVS-Studio хотели бы помочь миру программного обеспечения лучше познакомиться с инструментами статического анализа кода и повысить его качество. Теперь PVS-Studio предоставляется бесплатного студентам в учебных целях, индивидуальным разработчикам и коллективам энтузиастов.

( Подробнее )

>>> Подробная статья на Хабре

 , , , ,

Andrey_Karpov_2009
()

Иван Чукич в Нижнем Новгороде 03 декабря 2016

Группа Конференции и встречи

Иван Чукич (Ivan Čukić) — один из ведущих разработчиков KDE, энтузиаст Open Source и функционального программирования из Белграда — сделает доклад на встрече программистов C++. Встреча проходит при поддержке Яндекса и Высшей Школы Экономики.

Программа встречи:

  • 11:00—11:30: регистрация;
  • 11:30—12:30: Ivan Čukić «QtFuture»;
  • 12:30—13:30: Илья Удалов «Gradle для кроссплатформенной С++ разработки»;
  • 13:30—14:00: перерыв;
  • 14:00—15:00: Максим Хижинский «Lock-free map и thread-safe итераторы в них».

Место проведения: Высшая школа экономики, ул. Б. Печерская 25/12.

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

 , , ,

Aceler
()

C++ встреча в Екатеринбурге 25 ноября 2016

Группа Конференции и встречи

Программа:

  • 18:00: сбор и регистрация;
  • 18:30: Павел Беликов «Опыт миграции крупного проекта с Windows-only на Linux»;
  • 19:20: Евгений Крутько «Многопоточные вычисления, современный подход»;
  • 20:20: Тененёв Анатолий «Boost.Asio в алгоритмической торговле».

Место проведения: Екатеринбург, ул. 8 марта, 8д Freelance cafe.

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

 , ,

anonymous
()

PVS-Studio для Linux

Группа Проприетарное ПО

Появилась версия анализатора PVS-Studio, работающая в GNU/Linux. До этого программа работала только в Windows.

PVS-Studio — это инструмент для выявления ошибок в исходном коде программ, написанных на С и C++. В случае интеграции с Visual Studio также возможна проверка проектов на C#.

PVS-Studio выполняет широкий спектр проверок кода, но наиболее удачно справляется с поиском опечаток и последствий неудачного Copy-Paste. Показательные примеры таких ошибок: V501, V517, V522, V523, V3001.

( читать дальше... )

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

 , , ,

Andrey_Karpov_2009
()

PVS-Studio под Linux, тренируемся на Inkscape

Группа Open Source

Как я уже писал, мы потихоньку продолжаем заниматься созданием PVS-Studio for Linux. Потихоньку от того, что половина С++ сотрудников в летних отпусках. А так мы по-прежнему полны энтузиазма.

При разработке нам естественно надо на чем-то испытывать анализатор. Для этого берутся различные проекты, и иногда попутно, вот как сейчас, пишутся статьи. На этот раз жертвой стал графический редактор Inkscape. Если честно, я его даже никогда не видел (сам использую Gimp), но он не раз упоминался на Linux.org.ru, а значит местному сообществу будет интересно взглянуть на найденные в нем ошибки.

( читать дальше... )

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

 , , , ,

Andrey_Karpov_2009
()

Вы поможете, если заранее запишетесь в добровольцы для тестирования beta-версии PVS-Studio for Linux

Группа Проприетарное ПО

Я и мои коллеги очень долго отказывались обсуждать тему разработки PVS-Studio для операционной системы Linux и UNIX мира в целом. Дело не в каких-то личных пристрастиях или технических сложностях. Всё проще — это холодный, прагматический подход к развитию продукта.

Мы — маленькая компания, которая существует исключительно за счёт продажи программного продукта PVS-Studio. Мы не получаем гранты или какую-то иную поддержку от государства или больших компаний — всё это накладывает большую ответственность за выбор направления развития.

Сейчас мы накопили новых сил, собрались с духом и начинаем новую для нас тему освоения Linux. Да, да, это свершилось. Подробности можно узнать из статьи на Хабре: "PVS-Studio признаётся в любви к Linux". А заодно обсудить, является ли Linux операционной системой.

И самое важное

Мы с нетерпением ожидаем, когда можно будет что-то представить миру. Надеюсь, я вас заинтересовал, и многим Linux-разработчикам хочется попробовать проверить свои проекты. Если у вас есть желание и время, приглашаю вас заранее вступить в группу beta-тестеров.

Итак, если вы хотите помочь нам проверить работу PVS-Studio для Linux прошу написать нам. Чтобы письма можно было проще обрабатывать, просим указать в теме письма строчку «PVS-Studio for Linux, Beta». Письма отправляйте по адресу support@viva64.com.

Просим писать письма с корпоративных ящиков и кратко представиться. Мы будем благодарны всем, кто откликнется, но в первую очередь будем уделять внимание тем людям, которые потенциально со временем могут стать нашими клиентами.

Также прошу в письме дать ответы на следующие вопросы:

  • Под какой операционной системой планируется запускать анализатор?
  • Какую среду разработки вы используете?
  • Какой компилятор используется для сборки проекта?
  • Какую сборочную систему вы используете?

Когда появится версия, которую можно будет попробовать, мы напишем всем откликнувшимся письма.

Заранее всем спасибо. Мы будем временами упоминать в статьях, как продвигается развитие PVS-Studio для Linux.

>>> Полная статья на Хабре

 , ,

Andrey_Karpov_2009
()