c++ - Cygwin 端口不工作 => 在启动时立即退出

标签 c++ windows linux cygwin porting

我正在尝试使用 cygwin 将 C++ 程序从 Linux 移植到 Windows。我现在可以很好地构建和链接它,但是当我启动该程序时,它会立即退出并出现错误。当我在 gdb 中尝试时,我得到以下“未知目标异常”结果:

$ gdb ../../bin/ARCH.cygwin/release/myApp
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 GDB was configured as "i686-pc-cygwin"...
(no debugging symbols found)
(gdb) run
Starting program: bin/ARCH.cygwin/release/myApp.exe
[New thread 1452.0x99c]
gdb: unknown target exception 0xc0000139 at 0x77149eed

Program exited with code 030000000471.
You can't do that without a process to debug.

当不在 gdb 中时,它会引发一个对话框,内容为:“一个问题导致程序停止正常工作。Windows 将关闭该程序并在有可用解决方案时通知您。”

知道我做错了什么吗?

谢谢。

-威廉

最佳答案

Microsoft 将 0xC0000139 描述为 STATUS_ENTRYPOINT_NOT_FOUND。这表明您的程序未正确链接。仔细检查您的构建脚本以确保它编译并链接所有相关文件。

如果您正在使用任何库,则可能存在链接问题(或者您可能缺少某种 DLL)。

您可以通过查看它生成的错误报告来获取更多信息 - the error message Microsoft associates with that error应该准确地包括它找不到的入口点。

关于c++ - Cygwin 端口不工作 => 在启动时立即退出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1993297/

相关文章:

linux - 调用函数的局部变量在被调用函数中是可访问的

c++ - 如何使用 PatchELF 或 chrpath 替换库共享对象

windows - Windows 有类似 xvfb 或 xnest 的东西吗?

.net - WPF 控件和 SystemColors - Alpha 混合?

java - 如何强制在 Java 1.5.0_14 JRE 而不是 JRE 1.7 中打开 JNLP 文件

c - 无法在 CentOS 上编译 C++ 程序

php - 为什么php找不到这个文件?

c++ - 为 x,y,z 坐标实现 operator<

c++ - 如何避免 Visual Studio 下的名称隐藏警告?

c++ - 元组 std::get() 不适用于变量定义的常量