启动openocd+时出现问题;来自Makefile的GDB

启动openocd+时出现问题;来自Makefile的GDB,makefile,Makefile,我正试图通过Make启动openocd+gdb: debug: (openocd interface/stlink-v2.cfg -f target/stm32f4x.cfg &); \ arm-none-eabi-gdb $(BUILD_DIR)/$(TARGET).elf -ex "target remote localhost:3333" -ex "load"; \ killall openocd; \ 这将一直起作用,直到按下ctrl+c组合键断开: (

我正试图通过Make启动openocd+gdb:

debug:
    (openocd interface/stlink-v2.cfg -f target/stm32f4x.cfg &); \
    arm-none-eabi-gdb $(BUILD_DIR)/$(TARGET).elf -ex "target remote localhost:3333" -ex "load"; \
    killall openocd; \
这将一直起作用,直到按下ctrl+c组合键断开:

(gdb) c
Continuing.
^CError detected on fd 9
Remote communication error.  Target disconnected.: Resource temporarily unavailable.
我猜Make正在拦截ctrl+c信号,因为如果我复制
debug
命令的输出并将其粘贴到我的终端(bash)中,我可以使用ctrl+c进行中断而不会出现问题


有没有一个聪明的方法可以做到这一点?我曾尝试将debug命令包装在shell脚本/python脚本中,但没有成功

方法是不从makefile调用交互式命令。如果您想使用快捷方式,请创建一个shell别名或shell脚本,然后改用它。Make不是设计用于交互命令的,因此当与交互命令一起使用时,它不会正确处理终端的管理。方法是不从makefile调用交互命令。如果您想使用快捷方式,请创建一个shell别名或shell脚本,然后改用它。Make不是设计用于交互命令的,因此当与交互命令一起使用时,它不会正确处理终端的管理。