Если оно никогда не печатает второе сообщение, то оно либо выходит из функции (в этом случае ваша программа должна завершиться), либо test_func()
имеет бесконечный цикл (хотя имейте в виду, что это может занять больше времени, чем вы готов ждать).
Не видя код для test_func()
, мы не можем точно сказать, в чем конкретно проблема.
Если у вас нет исходного кода для test_func()
, лучшее, что вы сможете сделать, это запустить его, а затем вызвать дамп ядра извне, например, с помощью kill -6
. Затем вы можете загрузить исполняемый файл и файл ядра в gdb
, чтобы попытаться выяснить, что он делает.
Я должен подчеркнуть, что это будет нелегко, если объекты в библиотеке не содержат отладочной информации, но вам нужно разыграть карты, которые вам сдали.