The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги ]



"Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Программирование под UNIX (GUI, XWindow, Qt, GTK)
Изначальное сообщение [ Отслеживать ]

"Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от hrm email(ok) on 13-Янв-18, 02:27 
Помогите пожалуйста найти ошибку, почему программа из документации вылетает с ошибкой "Process terminated with status 1".
Ошибка происходит уже в процессе выполнения программы.
При этом в программе есть такой код:
================================================================
  if(argc != 2) {
    fprintf(stderr, "usage: packbox num, where num is 1, 2, or 3.\n");
    /* Очищаем поток выхода GTK и выходим со статусом 1. */
    exit(1);
  }
================================================================
Но тогда в описании ошибки должна быть строка "usage: packbox num, where num is 1, 2, or 3.\n", но ее нет.
Логи не помогли мне найти место ошибки. Подскажите плз где мне искать ошибку. Вот логи, которые выдает CodeBlocks при компиляции и выполнении программы.

==================================================================

-------------- Сборка: Debug in Packing_Widgest (compiler: GNU GCC Compiler)---------------

mingw32-gcc.exe -mms-bitfields -Wall -g -IC:\prog\CodeBlocks\GTK\include -IC:\prog\CodeBlocks\GTK\include\gtk-2.0 -IC:\prog\CodeBlocks\GTK\include\cairo -IC:\prog\CodeBlocks\GTK\include\gdk -IC:\prog\CodeBlocks\GTK\include\glib-2.0 -IC:\prog\CodeBlocks\GTK\lib\glib-2.0\include -IC:\prog\CodeBlocks\GTK\include\pango-1.0 -IC:\prog\CodeBlocks\GTK\lib\gtk-2.0\include -IC:\prog\CodeBlocks\GTK\include\atk-1.0 -IC:\prog\CodeBlocks\GTK\include\gdk-pixbuf-2.0 -c C:\work\GTK\Packing_Widgest\main.c -o obj\Debug\main.o
mingw32-g++.exe -LC:\prog\CodeBlocks\GTK\lib -o bin\Debug\Packing_Widgest.exe obj\Debug\main.o   -lgtk-win32-2.0 -lgobject-2.0 -lglib-2.0 -mwindows
Output file is bin\Debug\Packing_Widgest.exe with size 50,73 КБ
Process terminated with status 0 (0 minute(s), 20 second(s))
0 error(s), 0 warning(s) (0 minute(s), 20 second(s))

-------------- Запустить: Debug in Packing_Widgest (compiler: GNU GCC Compiler)---------------

Проверка наличия: C:\work\GTK\Packing_Widgest\bin\Debug\Packing_Widgest.exe
Выполняется: "C:\work\GTK\Packing_Widgest\bin\Debug\Packing_Widgest.exe"  (в C:\work\GTK\Packing_Widgest\.)
Process terminated with status 1 (0 minute(s), 12 second(s))
=======================================================================

Я не привожу код программы, потому что он есть по адресу https://www.opennet.ru/docs/RUS/gtk_plus/x405.html. Программу я вычитал и у меня ошибок нет. Да и компилятор не выдает никаких ошибок.

С уважением, Рамиль.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от pavlinux (ok) on 13-Янв-18, 02:34 
> Подскажите плз где мне искать ошибку.

В stderr

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от eRIC (ok) on 14-Янв-18, 09:11 
Packing_Widgest.exe > logs.txt


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от ubob (??) on 22-Янв-18, 09:36 
запусти через strace или в отладчике
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от hrm (ok) on 22-Янв-18, 11:18 
> запусти через strace или в отладчике

Посмотрел в отладчике. Там действительно выполняется случай с проверкой аргументов. Но я пока не понимаю, какие аргументы нужно передавать в программу. И зачем?

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от ubob (??) on 22-Янв-18, 12:46 
>> запусти через strace или в отладчике
> Посмотрел в отладчике. Там действительно выполняется случай с проверкой аргументов. Но
> я пока не понимаю, какие аргументы нужно передавать в программу. И
> зачем?

Что вообще должна эта программа делать? Забей ей в параметры 1,2 или 3 как она просит (packbox num, where num is 1, 2, or 3) и посмотри что будет. Ей нужен только один аргумент.

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

6. "Не выполняется программа Packing Widgets из GTK+ 2.0 Tutorial"  +/
Сообщение от hrm (ok) on 22-Янв-18, 15:24 
>>> запусти через strace или в отладчике
>> Посмотрел в отладчике. Там действительно выполняется случай с проверкой аргументов. Но
>> я пока не понимаю, какие аргументы нужно передавать в программу. И
>> зачем?
> Что вообще должна эта программа делать? Забей ей в параметры 1,2 или
> 3 как она просит (packbox num, where num is 1, 2,
> or 3) и посмотри что будет. Ей нужен только один аргумент.

Это программа из документации CTK+ по адресу https://www.opennet.ru/docs/RUS/gtk_plus/x405.html и должна продемонстрировать как выводятся кнопки в контейнере. Но там не говориться ни о каких аргументах. Если убрать проверку количества аргументов, то выводится пустое окно. То есть какие-то аргументы там должны быть. А какие я не могу понять. Проверяется в программе их количество. По умолчанию передается один аргумент. Поэтому после проверки она заканчивает работу. Попросту вылетает с ошибкой.
Спасибо за помощь. Я разобрался, что она все-таки работает. Надо поэкспериментировать с аргументами.
И это документация, в которой все должно разжевываться. А приходится экспериментировать :)).

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема


  Закладки на сайте
  Проследить за страницей
Created 1996-2018 by Maxim Chirkov  
ДобавитьРекламаВебмастеруГИД  
Hosting by Ihor