LINUX.ORG.RU

Сообщения Antonavt

 

Mpich2, hydra

Никто не сталктвался с такой проблемой? При запуске очень большой командой MPICH2'у через свое написанное приложение:

mpiexec -enable-x -f /home/anton/qtProject/testHighlight/architectures/SystemWithOutShareResours.hosts 
-n 1 xterm -e bash -c "gdb -silent </home/anton/mpich2/fifoData/gdbin0 >/home/anton/mpich2/fifoData/gdbout0 2>&1 /home/anton/qtProject/testHighlight/programs/test" :
 -n 1 xterm -e bash -c "gdb -silent </home/anton/mpich2/fifoData/gdbin1 >/home/anton/mpich2/fifoData/gdbout1 2>&1 /home/anton/qtProject/testHighlight/programs/test" :
 -n 1 xterm -e bash -c "gdb -silent </home/anton/mpich2/fifoData/gdbin2 >/home/anton/mpich2/fifoData/gdbout2 2>&1 /home/anton/qtProject/testHighlight/programs/test"
Выдает такое:
[mpiexec@pc-anton3] control_cb (./pm/pmiserv/pmiserv_cb.c:215): assert (!closed) failed
[mpiexec@pc-anton3] HYDT_dmxu_poll_wait_for_event (./tools/demux/demux_poll.c:77): callback returned error status
[mpiexec@pc-anton3] HYD_pmci_wait_for_completion (./pm/pmiserv/pmiserv_pmci.c:181): error waiting for event
[mpiexec@pc-anton3] main (./ui/mpich/mpiexec.c:405): process manager error waiting for completion

Как такое решается?

Antonavt
()

Qt, QGraphics View и Scena, обрезается область отображения

Привет,

Есть QGraphicsView на нем scena,

На scene графический объект(А) унаследованный от QGraphicsWidget( своеобразное окно, которое можно двигать)

На scenу добавляю так же еще объект(Б) унаследованный от QGraphicsObject( привязываю Б к А, то есть когда двигаю А двигается Б)

Почему то Б отображается только в некоторой области scenы, то есть передвигаю А в край scenы Б исчезает, возвращаю А - Б снова появляется( надо чтобы Б было видно всегда)

В чем может быть причина?

 

Antonavt
()

Qt, Добавить слайдер в QGraphicsItem, C++

Привет,

Есть сцена, на ней graphicsItem-ы(представляет из себя прямоугольник на котором написан какой нибудь текст)

Требуется добавить слайдер(или его подобие) То есть если текст выходит за прямоугольник то слайдером можно было бы посмотреть весь текст.

Подскажите есть ли какие нибудь примеры? Или что то подобное?

 ,

Antonavt
()

Qt и подобие демона

Привет,

Есть приложение с GUI интерфейсом(А) которое может читать вывод другого приложения(так сказать принимать сообщения). При этом пока сообщение не пришло, приложение А активно и может как то управляться пользователем

Сообщения приходят в разное время. Когда приходит сообщения, в этот момент в приложении А должен выполниться код и отобразиться результат.

Ткините пожалуйста через что такое можно сделать?

Как я понимаю нужно использовать fork для постоянной прослушки?

Antonavt
()

Gdb, точки наблюдения, mpi-программа

Привет,

Отлаживаю программу с помощью GDB. Требуется устанавливать много точек наблюдения. Устанавливаю с помощью команды watch:

(gdb) watch point

На 6 точке выдает:

Could not insert hardware watchpoint 1.
Could not insert hardware breakpoints:
You may have requested too many hardware breakpoints/watchpoints.

Вроде как это ограничение связанно с x86 архитектурой, если я правильно понял.

Можно ли как нибудь обойти данное ограничение?

 ,

Antonavt
()

создание файла(mkfifo)+Qt

Привет, Пытаюсь в цикле создавать файлы. Вызываемый код при создании:

...
for(int i = 0; i < 10; i++)
    {
        char tmpStrIn[35] = "/home/anton/mpich2/fifoData/gdbin";
        char tmpStrOut[36] = "/home/anton/mpich2/fifoData/gdbout";
        char str[2];
        sprintf(str, "%d", i);
        strcat(tmpStrIn, str);
        strcat(tmpStrOut, str);
        tmpStrIn[34] = 0;
        tmpStrOut[35] = 0;
        createFifo(tmpStrIn, tmpStrOut);
    }
...
void createFifo(char* _pathFifoIn, char* _pathFifoOut)
{
    char* pathFifoIn = new char[strlen(_pathFifoIn)];
    char* pathFifoOut = new char[strlen(_pathFifoOut)];
    memcpy(pathFifoIn, _pathFifoIn, strlen(_pathFifoIn));
    memcpy(pathFifoOut, _pathFifoOut, strlen(_pathFifoOut));

    unlink(pathFifoIn);
    if((mkfifo(pathFifoIn, S_IRUSR|S_IRGRP|S_IROTH|S_IWOTH|S_IWGRP|S_IWUSR)) == -1)
        fprintf(stderr, "Невозможно создать fifo.........\n");
    unlink(pathFifoOut);
    if((mkfifo(pathFifoOut, S_IRUSR|S_IRGRP|S_IROTH|S_IWOTH|S_IWGRP|S_IWUSR)) == -1)
        fprintf(stderr, "Невозможно создать fifo.........\n");
}
В итоге получается что некоторые файлы создаются с нормальным именем заданным программой, а в имя некоторых дописывается кракозябра и в скобках пишется неверная кодировка, в разных запусках кода это происходит с разными файлами. Что не так сделал?

 ,

Antonavt
()

Создание меню Qt, Ubuntu

Привет,

Создаю на Qt меню на форме. Система Ubuntu.

Меню создается, глобальное меню отображается нормально, но в самом окне меню почему то обрезается вот так:

Скрин меню

Как отобразить меню в окне полностью? Или убрать его из окна совсем, оставив только глобальное меню?

 

Antonavt
()

Именованный канал на с++

Привет,

Пытаюсь отдавать команды с помощью именованного канала mkfifo на с++.

#include <stdio.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>

int main()
{
   int client_to_server;
   char myfifo[] = "in";

   char str[BUFSIZ];
   while(1)
   {
	   printf("Input message to serwer: ");
	   scanf("%s", str);

	   client_to_server = open(myfifo, O_WRONLY);
	   write(client_to_server, str, sizeof(str));

           if(strcmp("exit",str) == 0)
		   break;
   }
   close(client_to_server);

   /* remove the FIFO */
   printf("done!\n");

   return 0;
}

принмает команды gdb

 $ gdb <in >out &

где in это именованный канал а out обычный файл.

При запуске с++ программы выполняется только одна первая команда, дальше команды не выполняются. Что делаю не так?

 

Antonavt
()

Дебаг mpi программ с помощью gdb

Привет,

Использую mpich2 1.4. Требуется продебажить программу Пытаюсь дебажить без создания xterm'а, чтобы напрямую писать читать в потоки ввода вывода процессов gdb, команда: mpiexec -n 2 gdb ./test. При этом создаются 2 процесса: один нормально отвечает на команды, а второй становится процессом «зомби» и на команды не отвечает. Кто нибудь знает почему второй становится таковым? Можно ли как то данную ситуацию исправить?

Antonavt
()

xterm + gdb

Привет, Пытаюсь подключиться к stdin stdout gdb запущенного в xterm'e. Сообщения в поток stdin отправляются(и даже это сообщение появляется в окне xterm) но сама команда gdb не обрабатывается и в stdout ничего не появляется(в окно xterm тоже ничего не выводится) Могли бы подсказать как правильно можно подключиться к stdin stdout xterm'а? Если такое возможно.

Antonavt
()

RSS подписка на новые темы