Официальный форум СВД Встраиваемые Системы
12 Августа, 2020, 06:16:25 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1] 2 3 ... 5   Вниз
  Печать  
Автор Тема: QNX Momentics IDE 7.0 - интегрированная среда разработки  (Прочитано 8603 раз)
Игорь Рондарев
Модератор
Опытный пользователь

Сообщений: 211


Сотрудник СВД ВС


WWW
« : 26 Апреля, 2018, 13:55:07 »

    QNX Momentics IDE 7.0 - интегрированная среда разработки

    ВАЖНО:
    • Для полноценного использования среды разработки необходимо наличие на инструментальной машине установленных компонентов QNX SDP 6.5.0 (или более поздних версий) и действующей лицензии.

    QNX Momentics IDE 7.0 - актуальная версия интегрированной среды разработки приложений для операционных систем семейства QNX 6.х/7.x и ЗОСРВ "Нейтрино". К основным отличиям (по отношению к версиям 4.7 и 5.0) относятся:
    • Поддержка 64-разрядных инструментальных ОС (GNU/Linux, Windows, а также MacOS X при использовании QNX SDP 7.0)
    • Переработанный интерфейс, в т.ч. новые инструменты создания и запуска проектов
    • Новые наборы инструментов; перспектива QNX Analysis
    • Новый интерфейс редактирования файлов построения образов (инструмент System Builder)
    • Поддержка инструментария Valgrind (взаимодействие с целевой машиной + визуализация результатов)
    • Повышение стабильности, дополнительная функциональность некоторых компонентов
    • Поддержка синтаксиса проектов, построенных на платформе Qt
    • Визуализация результатов работы инструментов модульного тестирования (Qt Test, Boost Test и Google Test)
    • Расширенная функциональность инструментов работы с кодом (автодополнение, работа с журналами компиляции и т.д.)
    • Расширенная поддержка систем контроля версий, в т.ч. Git (модуль Eclipse EGit)
    • Установка расширений из репозитория дополнительных инструментов Eclipse Marketplace
    • Возможность установки обновлений по сети или из локальной копии репозитория обновлений QNX Momentics IDE

    и т.д. (подробнее - см. раздел "Документация")

    Установка и запуск
    Установка производится путём раcпаковки архива, соответствующего используемой инструментальной системе (Linux, Windows), в произвольный пустой каталог на файловой системе (не обязательно внутри имеющегося каталога установки QNX SDP).
    Пример:
    • Windows: C:\QNX650\Momentics7, D:\IDE7 и т.п.
    • Linux: /opt/momentics7 и т.п.

    Запуск IDE производится с помощью файла qde (или qde.exe для Windows). Возможно создание соответствующих символьных ссылок или "ярлыков".

    Обновление
    Поскольку QNX Momentics IDE 7.0 состоит из нескольких подсистем, для его успешного обновления должны быть доступны и сконфигурированы соответствующие источники обновлений (т.н. Update Sites):
    Данные источники должны быть активны в меню конфигурации обновлений: Window->Preferences->Install/Update->Available Software Sites. Непосредственно обновление осуществляется с помощью меню Help->Check For Updates

    Документация
    ВАЖНО:

    Скачать
    Ссылка для скачивания QNX Momentics IDE 7.0 (предварительно необходимо нажать кнопку "Спасибо" или оставить комментарий в данной теме):




    Также возможно скачивание из соответствующего раздела сайта community.qnx.com.

    Обратная связь
    Задавать вопросы и сообщать об обнаруженных проблемах в работе IDE можно в данной теме.
    « Последнее редактирование: 09 Июля, 2020, 20:06:52 от Игорь Рондарев » Записан

    Vimak
    Пользователь

    Сообщений: 36


    « Ответ #1 : 03 Мая, 2018, 15:17:30 »

    Спасибо
    Записан
    Игорь Рондарев
    Модератор
    Опытный пользователь

    Сообщений: 211


    Сотрудник СВД ВС


    WWW
    « Ответ #2 : 13 Июня, 2018, 16:48:46 »

    В первое сообщение добавлена ссылка на тему "Использование документации из состава QNX SDP 6.5.0 в QNX Momentics IDE 7.0"
    Записан

    step
    Интересующийся

    Сообщений: 1


    « Ответ #3 : 08 Августа, 2018, 13:42:45 »

    Спасибо
    Записан
    yanvasilij
    Пользователь

    Сообщений: 15


    « Ответ #4 : 12 Сентября, 2018, 16:03:17 »

    Добрый день!

    Пытаюсь добавить компилятор GCC 4.8.3, делаю по инструкции от сюда. После переключения SDP в QNX Momentics IDE 7.0 на версию с  GCC 4.8.3 сборка любого проекта заканчивается ошибкой:

    Код:
    qcc -lang-c++ -Vgcc_ntox86 -c -Wp,-MMD,build/x86-debug/src/test.d,-MT,build/x86-debug/src/test.o -o build/x86-debug/src/test.o  -Wall -fmessage-length=0 -g -O0 -fno-builtin  src/test.cpp
    cc: unknown target 'gcc_ntox86+debug'
    cc: targets available in /opt/qnx650-gcc483/host/linux/x86/etc/qcc/gcc:

    Не подскажите, в чем может быть дело?
    Записан
    Игорь Рондарев
    Модератор
    Опытный пользователь

    Сообщений: 211


    Сотрудник СВД ВС


    WWW
    « Ответ #5 : 13 Сентября, 2018, 14:28:59 »

    Уточните, пожалуйста, каково фактическое содержимое каталога /opt/qnx650-gcc483/host/linux/x86/etc/qcc/gcc.
    Записан

    yanvasilij
    Пользователь

    Сообщений: 15


    « Ответ #6 : 14 Сентября, 2018, 07:34:23 »


    Содержимое  /opt/qnx650-gcc483/host/linux/x86/etc/qcc/gcc :


    Код:
    .
    ├── default
    └── gcc
        └── 4.8.3
            ├── default
            ├── gcc_ntoarmle_acpp.conf
            ├── gcc_ntoarmle_acpp++.conf
            ├── gcc_ntoarmle_acpp-ne.conf
            ├── gcc_ntoarmle_acpp-ne++.conf
            ├── gcc_ntoarmle.conf
            ├── gcc_ntoarmle++.conf
            ├── gcc_ntoarmle_cpp.conf
            ├── gcc_ntoarmle_cpp++.conf
            ├── gcc_ntoarmle_cpp-ne.conf
            ├── gcc_ntoarmle_cpp-ne++.conf
            ├── gcc_ntoarmle_ecpp.conf
            ├── gcc_ntoarmle_ecpp++.conf
            ├── gcc_ntoarmle_ecpp-ne.conf
            ├── gcc_ntoarmle_ecpp-ne++.conf
            ├── gcc_ntoarmle_gpp.conf
            ├── gcc_ntoarmle_gpp++.conf
            ├── gcc_ntoarmv7le_acpp.conf
            ├── gcc_ntoarmv7le_acpp++.conf
            ├── gcc_ntoarmv7le_acpp-ne.conf
            ├── gcc_ntoarmv7le_acpp-ne++.conf
            ├── gcc_ntoarmv7le.conf
            ├── gcc_ntoarmv7le++.conf
            ├── gcc_ntoarmv7le_cpp.conf
            ├── gcc_ntoarmv7le_cpp++.conf
            ├── gcc_ntoarmv7le_cpp-ne.conf
            ├── gcc_ntoarmv7le_cpp-ne++.conf
            ├── gcc_ntoarmv7le_ecpp.conf
            ├── gcc_ntoarmv7le_ecpp++.conf
            ├── gcc_ntoarmv7le_ecpp-ne.conf
            ├── gcc_ntoarmv7le_ecpp-ne++.conf
            ├── gcc_ntoarmv7le_gpp.conf
            ├── gcc_ntoarmv7le_gpp++.conf
            ├── gcc_ntomipsbe_acpp.conf
            ├── gcc_ntomipsbe_acpp++.conf
            ├── gcc_ntomipsbe_acpp-ne.conf
            ├── gcc_ntomipsbe_acpp-ne++.conf
            ├── gcc_ntomipsbe.conf
            ├── gcc_ntomipsbe++.conf
            ├── gcc_ntomipsbe_cpp.conf
            ├── gcc_ntomipsbe_cpp++.conf
            ├── gcc_ntomipsbe_cpp-ne.conf
            ├── gcc_ntomipsbe_cpp-ne++.conf
            ├── gcc_ntomipsbe_ecpp.conf
            ├── gcc_ntomipsbe_ecpp++.conf
            ├── gcc_ntomipsbe_ecpp-ne.conf
            ├── gcc_ntomipsbe_ecpp-ne++.conf
            ├── gcc_ntomipsbe_gpp.conf
            ├── gcc_ntomipsbe_gpp++.conf
            ├── gcc_ntomipsle_acpp.conf
            ├── gcc_ntomipsle_acpp++.conf
            ├── gcc_ntomipsle_acpp-ne.conf
            ├── gcc_ntomipsle_acpp-ne++.conf
            ├── gcc_ntomipsle.conf
            ├── gcc_ntomipsle++.conf
            ├── gcc_ntomipsle_cpp.conf
            ├── gcc_ntomipsle_cpp++.conf
            ├── gcc_ntomipsle_cpp-ne.conf
            ├── gcc_ntomipsle_cpp-ne++.conf
            ├── gcc_ntomipsle_ecpp.conf
            ├── gcc_ntomipsle_ecpp++.conf
            ├── gcc_ntomipsle_ecpp-ne.conf
            ├── gcc_ntomipsle_ecpp-ne++.conf
            ├── gcc_ntomipsle_gpp.conf
            ├── gcc_ntomipsle_gpp++.conf
            ├── gcc_ntoppcbe_acpp.conf
            ├── gcc_ntoppcbe_acpp++.conf
            ├── gcc_ntoppcbe_acpp-ne.conf
            ├── gcc_ntoppcbe_acpp-ne++.conf
            ├── gcc_ntoppcbe.conf
            ├── gcc_ntoppcbe++.conf
            ├── gcc_ntoppcbe_cpp.conf
            ├── gcc_ntoppcbe_cpp++.conf
            ├── gcc_ntoppcbe_cpp-ne.conf
            ├── gcc_ntoppcbe_cpp-ne++.conf
            ├── gcc_ntoppcbe_ecpp.conf
            ├── gcc_ntoppcbe_ecpp++.conf
            ├── gcc_ntoppcbe_ecpp-ne.conf
            ├── gcc_ntoppcbe_ecpp-ne++.conf
            ├── gcc_ntoppcbe_gpp.conf
            ├── gcc_ntoppcbe_gpp++.conf
            ├── gcc_ntoppcbespe_acpp.conf
            ├── gcc_ntoppcbespe_acpp++.conf
            ├── gcc_ntoppcbespe_acpp-ne.conf
            ├── gcc_ntoppcbespe_acpp-ne++.conf
            ├── gcc_ntoppcbespe.conf
            ├── gcc_ntoppcbespe++.conf
            ├── gcc_ntoppcbespe_cpp.conf
            ├── gcc_ntoppcbespe_cpp++.conf
            ├── gcc_ntoppcbespe_cpp-ne.conf
            ├── gcc_ntoppcbespe_cpp-ne++.conf
            ├── gcc_ntoppcbespe_ecpp.conf
            ├── gcc_ntoppcbespe_ecpp++.conf
            ├── gcc_ntoppcbespe_ecpp-ne.conf
            ├── gcc_ntoppcbespe_ecpp-ne++.conf
            ├── gcc_ntoppcbespe_gpp.conf
            ├── gcc_ntoppcbespe_gpp++.conf
            ├── gcc_ntoshle_acpp.conf
            ├── gcc_ntoshle_acpp++.conf
            ├── gcc_ntoshle_acpp-ne.conf
            ├── gcc_ntoshle_acpp-ne++.conf
            ├── gcc_ntoshle.conf
            ├── gcc_ntoshle++.conf
            ├── gcc_ntoshle_cpp.conf
            ├── gcc_ntoshle_cpp++.conf
            ├── gcc_ntoshle_cpp-ne.conf
            ├── gcc_ntoshle_cpp-ne++.conf
            ├── gcc_ntoshle_ecpp.conf
            ├── gcc_ntoshle_ecpp++.conf
            ├── gcc_ntoshle_ecpp-ne.conf
            ├── gcc_ntoshle_ecpp-ne++.conf
            ├── gcc_ntoshle_gpp.conf
            ├── gcc_ntoshle_gpp++.conf
            ├── gcc_ntox86_acpp.conf
            ├── gcc_ntox86_acpp++.conf
            ├── gcc_ntox86_acpp-ne.conf
            ├── gcc_ntox86_acpp-ne++.conf
            ├── gcc_ntox86.conf
            ├── gcc_ntox86++.conf
            ├── gcc_ntox86_cpp.conf
            ├── gcc_ntox86_cpp++.conf
            ├── gcc_ntox86_cpp-ne.conf
            ├── gcc_ntox86_cpp-ne++.conf
            ├── gcc_ntox86_ecpp.conf
            ├── gcc_ntox86_ecpp++.conf
            ├── gcc_ntox86_ecpp-ne.conf
            ├── gcc_ntox86_ecpp-ne++.conf
            ├── gcc_ntox86_gpp.conf
            └── gcc_ntox86_gpp++.conf
    Записан
    Игорь Рондарев
    Модератор
    Опытный пользователь

    Сообщений: 211


    Сотрудник СВД ВС


    WWW
    « Ответ #7 : 14 Сентября, 2018, 11:48:48 »

    Судя по всему, нарушена структура данного каталога (возможно, при распаковке архивов были использованы неверные относительные пути). В каталоге etc/qcc/gcc должен находиться только файл default и подкаталоги с номерами версий (4.4.2, 4.8.3, 5.5.0 и т.п.). Поскольку с момента выхода презентации, по которой Вы настраиваете инструментарий, в составе инструментария произошли определённые изменения (в т.ч. выпущены обновлённые версии компиляторов), рекомендую отправить запрос на адрес Технической поддержки для продолжения взаимодействия по данному вопросу.
    Записан

    camper81
    Интересующийся

    Сообщений: 1


    « Ответ #8 : 24 Сентября, 2018, 18:46:37 »

    Спасибо
    Записан
    Евгений Замятин
    Интересующийся

    Сообщений: 1


    « Ответ #9 : 16 Октября, 2018, 12:39:29 »

    Спасибо
    Записан
    Андрей Ивлев
    Пользователь

    Сообщений: 98



    « Ответ #10 : 17 Октября, 2018, 10:52:59 »

    Добрый день!

    Имеется несколько проектов в среде Momentics 7.0, часть из которых QNX library (static). Как произвести связывание их с QNX Executable проектом, чтобы при его сборке происходила сборка библиотек от которых он зависит, в случае если они претерпели какие-то изменения? Может быть предусмотрен какой-то способ, помимо самостоятельного написания/изменения файла сборки Makefile, и написания всего кода в одном большом проекте.

    Спасибо.
    Записан
    Игорь Рондарев
    Модератор
    Опытный пользователь

    Сообщений: 211


    Сотрудник СВД ВС


    WWW
    « Ответ #11 : 17 Октября, 2018, 12:56:15 »

    Добрый день!
    Принцип связывания проектов в Momentics 7 не претерпел изменений по сравнению с версией 4.7. Связывание  осуществляется через свойства проекта, пункт Project References; в нём необходимо отметить компоненты составного проекта, в т.ч. библиотеки. Как результат - операции Clean/Build будут синхронизированы. Однако в случае изменения файлов библиотеки пересборка основного проекта приводит только к пересборке проекта библиотеки, но не самого основного проекта(если я правильно понял, вопрос именно в этом?). Вариантом выхода из данной ситуации (для проектов типа QNX Executable/QNX Library) является принудительное указание зависимости в файле Makefile основного проекта. Пример:

    Цитировать
    #Linking with some external library from the same workspace
    INCLUDES += -I../testStaticLib/public
    LIBS += -L../testStaticLib/$(OUTPUT_DIR) -ltestStaticLib
    ....
    #Linking rule (we force 'make' to check if libtestStaticLib.a has been updated since last build)
    $(TARGET):$(OBJS) ../testStaticLib/$(OUTPUT_DIR)/libtestStaticLib.a

    При таком подходе контроль зависимостей между проектами остаётся за IDE (как и перестроение библиотеки в случае изменения её исходников), а непосредственную проверку необходимости перевыполнить линковку основного проекта выполняет уже сама утилита make в процессе его сборки.
    « Последнее редактирование: 17 Октября, 2018, 13:00:13 от Игорь Рондарев » Записан

    Андрей Ивлев
    Пользователь

    Сообщений: 98



    « Ответ #12 : 17 Октября, 2018, 14:02:56 »

    Игорь Рондарев, большое спасибо, то что нужно Smiley
    Записан
    Андрей Ивлев
    Пользователь

    Сообщений: 98



    « Ответ #13 : 18 Октября, 2018, 09:09:36 »

    В Momentics IDE 4.7 в свойствах проекта был пункт QNX C/C++ Project, в котором можно было управлять ключами компиляции и линковки. Также можно было указать Post-build actions и Definitions. В Momentics IDE 7.0 этот пункт отсутствует. Из среды данные операции можно выполнить или редактировать Makefile? Все что я добавляю во вкладках Paths and Symbols и Processor Include Paths, Macros etc в C/C++ General игнорируется, только после того как я укажу их в Makefile, они автоматически добавляются в перечень без возможности удаления. Извините за, может быть, глупые вопросы, но вплотную осваивать Momentics начал не так давно. Спасибо.
    « Последнее редактирование: 18 Октября, 2018, 09:59:46 от Андрей Ивлев » Записан
    Игорь Рондарев
    Модератор
    Опытный пользователь

    Сообщений: 211


    Сотрудник СВД ВС


    WWW
    « Ответ #14 : 18 Октября, 2018, 10:46:58 »

    Вопросы вполне по существу, так как в Momentics 7 подсистема работы с проектами переработана весьма значительно. В принципе, можно использовать оригинальные проекты QNX C/C++ Project (в стиле Momentics 4.7). В Momentics 7 они называются "QNX Legacy Recursive Make projects". Соответственно, в них будут доступны все старые настройки, в т.ч. Post-build actions. В проектах QNX Executable/QNX Library разработчики IDE пошли по пути отказа от подсистемы рекурсивных Makefile-ов, поэтому сборка управляется только переменными, используемыми в генерируемых при создании проекта Makefile-ах (INCLUDES, LIBS и т.д.). Переменные, которые сам Momentics "пробрасывает" в Makefile (напр. PLATFORM, BUILD_PROFILE и т.д.), доступны для просмотра и (при необходимости) внесения изменений в разделе "C/C++ Build -> Build Variables". Раздел C/C++ General, в свою очередь, используется в основном самой средой разработки, в т.ч. для корректной индексации исходников (чтобы работали функции вроде перехода между файлами по F3 и т.д.).

    В QNX Momentics 7.0 присутствует ещё один тип проектов, совмещающий в себе свойства вышеперечисленных типов. Пример создания: File -> New -> C++ Project -> Executable -> QNX C++ Executable project" (несмотря на схожесть названия, это не проект типа QNX Executable). По сути это видоизменённые проекты QNX C/C++ Project, в которых настройки находятся в разделе "C/C++ Build -> Settings". Post-build actions в них, например, задаются в пункте "C/C++ Build -> Settings -> Build steps". При этом надо отметить, что проекты данного типа не документированы. Соответственно, какая-либо подробная информация, в т.ч. об их дальшейшей судьбе в процессе развития QNX Momentics IDE, в настоящее время отсутствует.
    « Последнее редактирование: 18 Октября, 2018, 13:50:12 от Игорь Рондарев » Записан

    Страниц: [1] 2 3 ... 5   Вверх
      Печать  
     
    Перейти в:  

    Powered by MySQL Powered by PHP © 2002-2020 СВД Встраиваемые Системы.
    При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

    Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
    Valid XHTML 1.0! Valid CSS!
    Сайт СВД ВС

    В последний раз google посещал эту страницу 06 Августа, 2020, 13:51:30