Компания Adobe открыла код компилятора FlasCC, позволяющего собирать C/C++ проекты для Web

Компания Adobe представила новый проект CrossBridge, а рамках которого открыты исходные тексты компилятора FlasCC (Flash C++ Compiler), поставляемого в составе Adobe Creative Cloud и позволяющего компилировать код на языках C/C++ в представление для выполнения в браузере под управлением Flash Runtime (Flash Player или AIR).

Представленный инструментарий позволяет комбинировать гибкость, привычность и производительности языков C/C++ с широкой доступностью контента в Web. В частности, при помощи CrossBridge можно адаптировать существующую программу на C/C++ для распространения через Web и выполнения в окружении web-браузера с Flash-плагином, без необходимости инсталляции программ на локальные системы. Собранное при помощи CrossBridge приложение выполняется в специальном изолированном окружении и выполняется с производительностью близкой к нативным программам.

При этом из подобных программ можно использовать весь спектр возможностей Flash Runtime API, в том числе средства ускорения операций с графикой с привлечением GPU, OpenGL, применение 3D-шейдеров, вывод звука, функции для выполнения сетевых операций. Указанные особенности делают CrossBridge интересным решением для портирования игр для работы в Web, результаты такого портирования можно оценить на пример игры Epic Citadel. Кроме того CrossBridge поддерживает компиляцию С/C++ библиотек для использования в классических web-приложениях, в качестве примеров подобных библиотек отмечаются средства кодирования видео, шифрования и разбора различных форматов.

В настоящее время для загрузки доступен код выпуска CrossBridge 1.0.1, который включает в себя не только исходные тексты FlasCC 1.0, но и серию дополнительных улучшений. Кроме того сообществу переданы все текущие наработки будущего выпуска 1.1, примечательного переходом на использование LLVM и на новый фронтэнд, а также задействованием Clang для поддержки расширенного синтаксиса C++. После открытия кода компания Adobe не отстраняется от проекта, а намерена продолжать его развитие совместно с сообществом.

Текущая версия включает в себя вариант компилятора GCC 4.2 с Flash-бэкендом, отладчик на базе GDB, реализацию многопоточной библиотеки на основе pthread и бэкенд SWIG для автоматической генерации переносимого кода, позволяющего создавать Flash-библиотеки (SWC) на основе C/C++ библиотек.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.