作者:real存在尹 | 来源:互联网 | 2023-05-26 15:02
我正在阅读http://daleswanson.blogspot.com/2012/07/how-to-compile-c-code-in-notepad-with.html并决定尝试,以便我可以继续在Notepad ++中编写代码并有一个较短的编译/运行周期.
当我试图将编译/运行代码输入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(或单击Run菜单中的Run),我可以选择从命令行编译创建的a.exe文件,它将弹出一个命令窗口并运行该代码,这样就可以了.
但是当我尝试自动化编译/运行时,似乎我的更改目录命令在NppExec中由于某种原因不起作用.
以下是我发现的其他一些stackoverflow帖子,它们解决了类似的问题,但似乎并不适用于我.我没有任何积分,所以我无法回复其中任何一个:
如何使用NppExec插件从Notepad ++中编译和运行C文件?
在Notepad ++中使用gcc进行最终设置[使用nppexec]
Notepad ++,NppExec,CreateProcess()失败,错误代码2,Windows 8.1
好吧,看起来我链接的第一篇文章有一个部分解决方案 - 它看起来像(尽管在帖子名称中提到了c文件)它总结了如何编译perl脚本.它说在NppExec窗口中放入以下内容:
NPP_SAVE
CD $(CURRENT_DIRECTORY)
C:\MinGW32\bin\gcc.exe -g "$(FILE_NAME)"
a.exe
它在最后一行只有"a",但这与"a.exe"相同,而且这种方式更具人性化.话虽如此,这不是一个完整的解决方案.这只是在Notepad ++的内部控制台中运行文件,在屏幕的底部,我希望它弹出一个窗口,就像我使用Notepad ++的F5从它的directoy运行我的编译程序一样.
1> 小智..:
我从这里得到了一个有效的代码(我编辑了一下):http:
//windowsbro.blogspot.hu/2012/10/compile-with-notepad-any-language.html
npp_save
g++ "$(FULL_CURRENT_PATH)" -o "$(CURRENT_DIRECTORY)\$(NAME_PART).exe"
npp_run $(CURRENT_DIRECTORY)\$(NAME_PART).exe
在这种形式中,它编译源文件旁边的二进制文件.如果您将最后一行更改为:
cmd /c "$(CURRENT_DIRECTORY)\$(NAME_PART).exe"
然后程序在NppExec控制台中运行并运行cmd.exe
.