Ошибка отладки Cygwin.

У меня есть исполняемый файл, встроенный в Windows. Я хочу передать этот .exe в выходной файл, созданный Cygwin (версия для DOS). До определенного момента все идет хорошо, после чего отображается следующая ошибка, связанная с файлами DLL Cygwin (проверка ACL).

Program received signal SIGSEGV, Segmentation fault.
0x6108829e in cygwin1!aclcheck () from /usr/bin/cygwin1.dll
(gdb)

Почему я получаю эту ошибку и где я должен искать?


person Renjith G    schedule 29.05.2009    source источник
comment
попробуйте форум/доску cygwin. Я не пытаюсь вас оттолкнуть, но это не вопрос программирования, и похоже, что даже не ваше приложение... это базовая платформа.   -  person jpinto3912    schedule 29.05.2009
comment
Пожалуйста, перефразируйте. Что вы подразумеваете под передачей exe в выходной файл? Вы имеете в виду перенаправление? Кроме того, что такое Cygwin (версия для DOS)? Насколько я знаю, Cygwin работает только с Windows. (отсюда и победа)   -  person EFraim    schedule 29.05.2009


Ответы (1)


Проверьте свой код. Поскольку вы уже используете gdb, bt full должен быть вашим другом. Возможно, вы передаете неверные параметры, такие как недопустимые указатели, на какой-то системный вызов.

Скорее всего, это не aclcheck, где происходит сам segfault. Библиотеки Cygwin обычно не поставляются со встроенными символами отладки. gdb работает в обратном направлении от указателя инструкции и берет предыдущий увиденный символ. В неотладочных сборках есть только символы экспортируемых функций.

person laalto    schedule 29.05.2009