我正在使用 GNAT GPS 2012。由于某些库,我必须使用“-mwindows”选项来成功链接我的程序(它实际上是混合的 Ada/C++)。
该程序在 2 种情况下运行良好:1)如果通过 GNAT 启动器启动它(我的意思是放置在工具栏顶部的三角形按钮) - 在这种情况下一切正常 2)如果从 windows cmd 或资源管理器单独启动“.exe”并且不要从 Ada 端输出任何文本。
但是(!)如果与 windows cmd 或资源管理器分开启动程序:1)调用 Put 或 Put_Line 函数 -> 程序立即完成(没有错误,没有异常,只是退出) 2)如果从 C++ 端调用 printf 它将是忽略
我在单独的混合 Ada/C++ 简单示例中确定,当“-mwindows”链接器选项添加到 Ada 链接器时会出现此问题。
我也尝试将 dll 从 GNAT 项目复制到 exe 文件夹,但没有帮助。
你们能帮帮我吗,伙计们?谢谢!