我正在阅读 http://daleswanson.blogspot.com/2012/07/how-to-compile-c-code-in-notepad-with.html,并决定尝试一下,这样我就可以继续在Notepad++中编写代码,并缩短编译/运行周期。
当我尝试将编译/运行代码输入到NppExec中时,它无法工作。 我现在拥有的代码是:
在Notepad++的控制台中,我得到了以下信息:
以下是在Notepad++控制台中显示的结果:
以下是我所做的设置过程:
我从http://sourceforge.net/projects/mingw/files/下载了mingw-get-setup.exe,然后安装了MinGW Installation Manager。我使用它来安装了mingw32-gcc-++包以及mingw32-libz.dll和mingw32-libz.dev包。
在Notepad++中,我使用插件管理器安装了NppExec插件。
我可以先手动在命令窗口中编译我的代码,然后运行它。Notepad++会抱怨缺少一个库,所以我在编译时使用以下标志:g++ test.cpp -static-libgcc -static-libstdc++。
如果我在Notepad++中按下F5(或在“运行”菜单中单击“运行”),我可以选择从我的命令行编译中创建的a.exe文件,并弹出一个命令窗口并运行该代码,这很好用。
但是当我尝试自动化编译/运行时,似乎我的更改目录命令不起作用。
以下是我找到的一些类似问题的其他stackoverflow帖子,但似乎不适用于我。我没有积分,所以无法回复任何一个:
当我尝试将编译/运行代码输入到NppExec中时,它无法工作。 我现在拥有的代码是:
npp_save
cd "$(C:\Users\Bart\Desktop\new delete me)"
g++ "$(test.cpp)" -o $(testme.exe) -march=native -O3
NPP_RUN $(testme.exe)
这是基于我给出的第一个链接:
npp_save
cd "$(CURRENT_DIRECTORY)"
g++ "$(FILE_NAME)" -o $(NAME_PART) -march=native -O3
NPP_RUN $(NAME_PART)
在Notepad++的控制台中,我得到了以下信息:
NPP_SAVE: C:\Users\Bart\Desktop\new delete me\test.cpp
CD:
Current directory: C:\Program Files (x86)\Notepad++
g++ "" -o -march=native -O3
CreateProcess() failed with error code 2:
The system cannot find the file specified.
NPP_RUN:
- empty command
从其他页面的内容来看,似乎我只需要将那段代码粘贴进去,而大写单词不应该被替换,而是变量。因此,我使用了以下代码:
npp_save
cd "$(CURRENT_DIRECTORY)"
g++ "$(FILE_NAME)" -o $(NAME_PART) -march=native -O3
NPP_RUN $(NAME_PART)
以下是在Notepad++控制台中显示的结果:
NPP_SAVE: C:\Users\Bart\Desktop\new delete me\test.cpp
CD: C:\Users\Bart\Desktop\new delete me
Current directory: C:\Users\Bart\Desktop\new delete me
g++ "test.cpp" -o test -march=native -O3
CreateProcess() failed with error code 2:
The system cannot find the file specified.
NPP_RUN: test
- the specified file was not found
以下是我所做的设置过程:
我从http://sourceforge.net/projects/mingw/files/下载了mingw-get-setup.exe,然后安装了MinGW Installation Manager。我使用它来安装了mingw32-gcc-++包以及mingw32-libz.dll和mingw32-libz.dev包。
在Notepad++中,我使用插件管理器安装了NppExec插件。
我可以先手动在命令窗口中编译我的代码,然后运行它。Notepad++会抱怨缺少一个库,所以我在编译时使用以下标志:g++ test.cpp -static-libgcc -static-libstdc++。
如果我在Notepad++中按下F5(或在“运行”菜单中单击“运行”),我可以选择从我的命令行编译中创建的a.exe文件,并弹出一个命令窗口并运行该代码,这很好用。
但是当我尝试自动化编译/运行时,似乎我的更改目录命令不起作用。
以下是我找到的一些类似问题的其他stackoverflow帖子,但似乎不适用于我。我没有积分,所以无法回复任何一个:
- 如何使用NppExec插件在Notepad++中编译和运行C文件?
- 在Notepad++中使用nppexec的gcc最终设置
- Notepad++,NppExec,CreateProcess()失败,错误代码2,Windows 8.1
NPP_SAVE
CD $(CURRENT_DIRECTORY)
C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)"
a.exe
最后一行只有"a",但是这与"a.exe"相同,这种方式更容易理解。尽管如此,这并不是一个完整的解决方案。这只是在Notepad++的内部控制台中运行文件,在屏幕底部显示。我希望它弹出一个窗口,就像我从它的目录中使用Notepad ++的F5运行编译的程序时一样。