我正在使用一个在 Linux 上崩溃的程序(并且在 Windows 上运行良好),我不知道为什么。我有一个很奇怪的错误,那就是:&"warning: GDB: Failed to set controlling terminal: Inappropriate ioctl for devide\n"
当我启动调试器时。
我在互联网上找到的信息让我认为它与输出有关。
相关文件崩溃lign 0
并仅包含此功能:
void Sync_Print::stdOutFormat (const char* format, ...) {
va_list args;
va_start(args, format);
Locker Protect (Synchro);
::vprintf(format, args);
va_end(args);
}
Sync_Print
是我的类的名称,它实现static void stdOutFormat(const char* format, ...);
和static Mutex Synchro;
在我在 QtCreator 上的调试器中,它说程序在名为/lib/ld-linux.so.2
lign 0 的文件中崩溃了。程序立即崩溃,我什至无法使用...输出任何东西std
......即使是空的 main 并且没有包含它也会崩溃。
我有点迷路了......我不知道提供更多代码是否准确。如果您需要任何精度,我很乐意给他们...
我在 Linux Ubuntu 12.04 下,带有 QtCreator 和 GCC 4.7.2。我正在使用 Qt 4。