我使用默认设置和内置的MinGW在Windows 10 x64上安装了Code :: Blocks 17.12。
我为C创建了一个新的“控制台应用程序”项目。我试图运行该程序(调试),但它抱怨说在设置中未配置gdb。我进入了Settings > Debugger...
的IDE设置,并手动将路径设置为C:\CodeBlocks\MinGW\gdb32\bin\gdb32.exe
,这使我得以编译和运行。
我遇到的问题是我遵循了所有默认值,但是程序在完成后不会暂停。我知道这可以解决,但是这个问题专门针对Code :: Blocks的此功能为何失败。
在IDE中有一个选项,该选项默认在Project > Properties... > Build targets (tab) > Debug (target) > Pause when execution ends (checkbox)
中启用,默认情况下启用:
此功能为什么会失败?
我可以通过添加system("pause");
来确认程序能够正常运行,因此它不是运行时错误。
该程序是一个基本的“ hello world”程序:
#include <stdio.h>
#include <stdlib.h>
int main()
{
printf("Hello world!\n");
return 0;
}
这是我的构建日志:
Active debugger config: GDB/CDB debugger:Default
Building to ensure sources are up-to-date
Selecting target:
Debug
Adding source dir: C:\home\workspaces\learn-to-program-in-c\TestProject\Test\
Adding source dir: C:\home\workspaces\learn-to-program-in-c\TestProject\Test\
Adding file: C:\home\workspaces\learn-to-program-in-c\TestProject\Test\bin\Debug\Test.exe
Changing directory to: C:/home/workspaces/learn-to-program-in-c/TestProject/Test/.
Set variable: PATH=.;C:\CodeBlocks\MinGW\bin;C:\CodeBlocks\MinGW;C:\Windows\System32;C:\Windows;C:\Windows\System32\wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program Files\Intel\WiFi\bin;C:\Program Files\Common Files\Intel\WirelessCommon;C:\Windows\System32\OpenSSH;C:\Users\Matthew D'Onofrio\AppData\Local\Microsoft\WindowsApps;C:\opt\Cygwin\x86\bin;C:\bin;C:\home\opt\Cygwin\x86\bin
Starting debugger: C:\CodeBlocks\MinGW\gdb32\bin\gdb32.exe -nx -fullname -quiet -args C:/home/workspaces/learn-to-program-in-c/TestProject/Test/bin/Debug/Test.exe
done
Setting breakpoints
Debugger name and version: GNU gdb (GDB) 7.9.1
Child process PID: 4092
[Inferior 1 (process 4092) exited normally]
Debugger finished with status 0