当前位置:  开发笔记 > 编程语言 > 正文

直接从vim编译

如何解决《直接从vim编译》经验,为你挑选了3个好方法。

我想在没有关闭vi的情况下编译cpp文件.
我知道:!g ++ file.cpp但我更喜欢:make所以我在.vimrc文件中添加了这一行

au FileType C set makeprg = gcc \%
au FileType Cpp set makeprg = g ++ \%

但我一直得到
"make:*****没有指定目标,也没有找到makefile.停止.**"消息.
谁能告诉我我的设置有什么问题?
我用上面的选项成功编译.



1> Rob Wells..:

你需要在那里替换,尝试类似:

set makeprg=gmake\ %:r.o

哦,这假设你有:

    目录中的(M | m)akefile,或

    默认的SUFFIX规则适用于您的环境(看起来没有)

输入以下内容检查默认值:

make -n .o

并看看这是否给你一些明智的东西.

如果在另一个位置存在makefile,则可以添加-f选项以指向makefile,例如:

set makeprg=gmake\ -f\ ../some_other_dir/makefile\ %:r.o

顺便说一句,为了学习make,尤其是gmake,我建议你看一本优秀的书"使用GNU Make管理项目"(清理亚马逊链接).

HTH.

干杯



2> Sungwon Jeon..:

我应该将C,Cpp改为c,cpp,然后才能正常工作.

谢谢大家,特别是Rob Wells,你的回答对我很有帮助.谢谢.



3> Jonas..:

我认为如果你编写一个Makefile并把它放在vi可以找到它的地方会容易得多.我不确定你是否真的使用vi(我只使用过Vim),但是当有一个Makefile编译时应该像写一样简单:make(不需要set makeprg).

推荐阅读
黄晓敏3023
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有