代码之家  ›  专栏  ›  技术社区  ›  Ben S

cygwin gdb在尝试启动程序时给出错误193

  •  3
  • Ben S  · 技术社区  · 16 年前

    当我尝试在cygwin上用gdb调试一个简单程序时,我得到以下信息:

    C:\Users\Benoit St-Pierre\workspace_cpp\cs454>gdb a.exe
    GNU gdb 6.8.0.20080328-cvs (cygwin-special)
    Copyright (C) 2008 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
    and "show warranty" for details.
    This GDB was configured as "i686-pc-cygwin"...
    (gdb) start
    Breakpoint 1 at 0x401a51: file server.cc, line 207.
    Starting program: /cygdrive/c/Users/Benoit St-Pierre/workspace_cpp/cs454/a.exe
    Error creating process /cygdrive/c/Users/Benoit St-Pierre/workspace_cpp/cs454/a.exe, (error 193).
    

    其中错误193是 ERROR_BAD_EXE_FORMAT .

    编译后的应用程序本身运行良好,客户机连接并与应用程序交互。我用的是Cygwin 1.7,因为我用的是新的 getaddrinfo 设置套接字的方法。应用程序是使用GCC 3.4.4和以下命令编译的:

    g++ -g3 server.cc
    

    有人知道我可能做错了什么吗?

    1 回复  |  直到 16 年前
        1
  •  7
  •   steve    16 年前

    问题是您的路径名中有空格字符。将文件移动到其他目录,gdb将能够启动该进程。