Возможно ли иметь ошибку сегментации из-за x-сервера? - PullRequest
0 голосов
/ 02 июня 2019

Для школьного проекта я создаю графический интерфейс, но я хотел поработать над этим проектом дома, и, поскольку у меня есть только компьютер под управлением Windows, я установил x-сервер (для использования с подсистемой Windows для Linux). ): "VcXsrv Windows X Server".

Для некоторых из моих тестовых программ это работало идеально, но для одного из них произошла ошибка сегментации (дамп ядра).

Итак, я попытался отладить с помощью gdb (который не работает на x-сервере), но ... он работал отлично ...

Итак, вот мой вопрос: возможно ли получить ошибку сегментации из-за x-сервера?

1 Ответ

2 голосов
/ 02 июня 2019

Если ваша программа дает сбой из-за ошибки сегментации, то основная причина почти наверняка кроется в вашей программе, а не в среде. Возможно, однако, что неопределенное поведение вашей программы, которое проявляется как segfault в одной среде, проявляется по-разному в другой среде или с другой конфигурацией. В этом смысле вы могли бы сказать, что X-сервер может «вызвать» segfault, но его характеристика таким образом никоим образом не отпустит вашу программу.

Нередко UB проявляется иначе, когда программа запускается в отладчике, чем при непосредственном запуске. Это идет вместе с тем, чтобы быть "неопределенным". Если вы видите segfaults, тогда необязательно обращаться к отладчику, но более вероятным инструментом для определения проблемы будет анализатор использования памяти, такой как Valgrind.

...