Официальный форум СВД Встраиваемые Системы
23 Апреля, 2019, 07:20:29 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: Стандартный пример из QNX 6.5.0 Help завершается ошибкой  (Прочитано 269 раз)
Dion
Пользователь

Сообщений: 13



« : 12 Декабря, 2018, 16:56:26 »

Здравствуйте! Пытаюсь запустить стандартный пример из документации QNX 6.5.0:

Код:
#include <iostream>
#include <Pt.h>

int main(int argc, char *argv[])
{
    PdDirectContext_t *DirectMode = NULL;
    PhDrawContext_t *Olddc = NULL;
    PhRid_t rid_array[10];

    DirectMode = PdCreateDirectContext();
    if (DirectMode == NULL)
    {
        // error code
    }

    if(PdGetDevices(rid_array, 10) > 0)
    {
        PdSetTargetDevice((PhDrawContext_t *)DirectMode, rid_array[0]);
        Olddc=PdDirectStart(DirectMode);
        PgSetFillColor(Pg_PURPLE);
        PgDrawIRect(0, 0, 300, 300, Pg_DRAW_FILL);
        PgFlush();      // Draw the purple rect
        PdDirectStop(DirectMode);

       // When the driver leaves direct mode, an expose event
       // is emitted, which will erase our rectangle, so we
       // sleep for a bit so we can see that the rectangle
       // was drawn.
       sleep(5);
    }

    PdReleaseDirectContext(DirectMode);
    PhDCSetCurrent(Olddc);

    return(1);
}

К параметрам запуска добавлено -lph. Приложение успешно собирается, но при попытке запуска на целевой машине QNX вылетает с ошибкой Memory fault.

Валится на строчке DirectMode = PdCreateDirectContext();, никак не хочет создавать контекст.

Debug моментикса останавливается на этой строке с ошибкой SIGSEGV.

Не понимаю в чём дело...  Huh?

Дополнительно: на целевую машину добавлялись библиотеки Qt571 R827
Записан
Андрей Докучаев
Сотрудник СВД ВС
Ветеран

Сообщений: 733



WWW
« Ответ #1 : 12 Декабря, 2018, 17:40:02 »

Пытаюсь запустить стандартный пример из документации QNX 6.5.0:

Скопированный из справки код не является примером, он содержит лишь фрагмент кода. Для его работы необходимо корректно проинициализировать библиотеку ph.
Записан

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

Сообщений: 13



« Ответ #2 : 13 Декабря, 2018, 12:28:37 »

Андрей Докучаев, спасибо за подсказку. Разобрался.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

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

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

В последний раз google посещал эту страницу 10 Апреля, 2019, 10:11:04