windowsemacs编译
A. 如何在GNU Emacs环境下编译并运行C/C++程序
学习C/C++的朋友有没有想过完完全全的在linux环境下开发软件!?我想过,可能是因为个人对Windows平台有些偏见,或者说个人不是非常喜欢
在Windows下写程序的感觉,总觉得有那么一层膜隔阂着我们,不像Linux,可以做强大的服务器,在终端下只需要使用简简单单的命令便能完成相当复
杂的事情,是不是感觉很高深!?还有很多很多开源项目,Emacs也算一个吧!!!
呵呵,谈到在Linux下编程,我们不得不提这两款编辑器:vi/vim和Emacs(确切的说Emacs的功能已经远远超出了编辑器,使用它我们可能收
发邮件,玩游戏,排版等等)。Emacs的强大不得不让我们对设计出该编辑器的大师们发出崇高的敬意和赞叹,Emacs强大之处不仅仅局限于编辑功能,还
提供的许多自定义选项,还有我们可以不需要动鼠标便可完成日常工作(对于大多数人来说这可能不太现实),下面我只是简要的介绍如何使用Emacs编译/运
行C/C++程序,文中相关命令可以参考本人其他博文。
Emacs有很多版本,如Gnu Emacs、XEmac等等。而且Emacs在各个平台下均能表现的非常出色,前提是你要熟悉它。
首先,再次说明本人所使用的操作系统是rhel 6.2,已经安装GNU Emacs 23.1.1和gcc version
4.4.6,注意Emacs只是一个编辑器,在我们程序员看来(其实我们也可以将其看作IDE,如果使用的比较熟练的话),最起码对于我这种菜鸟来说,还
不能十分熟练的玩转Emacs,它实在是太强大了,以至于有很多知识需要去记忆(不仅仅是快捷键)。
OK,不啰嗦了,下面进入正题:
1.启动Emacs,在终端输入“emacs&”命令后回车(你也可以输入“emacs”命令,不过当你在使用Emacs的时候,当前终端
就不为你工作了;并且如果你熟练使用Emacs的话也可以输入“emacs
-nw”命令以启动非X视窗下的Emacs),至于后面为什么要加一个“&”符,这是Linux里面的基本知识,加上“&”符后会在当前
终端下产生一个子进程以运行Emacs而不会对当前终端的工作造成任何影响,这里我们键入“emacs –nw”命令,启动界面如图1所示;
图1 键入“emacs –nw”命令后,Emacs的启动界面
2.打开/新建文件,进入Emacs界面后,键“C-x
C-f”以打开/创建一个新的文件(如图2所示),建议以C/C++语言里所规定的扩展名来指定创建的文件的扩展名,虽然在Linux下面我们不是十分强
调文件的扩展名,但是如果你选择正当的扩展名的话,将有助于高亮代码,并且Emacs会根据我们创建的文件的扩展名以进行不同语言(要知道,Emacs不
只是为了C/C++程序员设计的)编码风格的缩进;
图2 键“C-x C-f”,输入文件名以打开/创建一个新的文件
3.编辑文件,键“C-x C-s”存盘,本人测试的代码如下:
[cpp] view plain
#include <iostream>
int main( ) {
std::cout << "Hello, Emacs!!!"
<< std::endl;
}
4.编译文件,这里我介绍两种方法。
法1:常规方法,参考Learning Gnu
Emacs,我们可以这样做:键“M-x”,此时在minibuffer中会显示“M-x”字样,输入“compile”命令后默认会显示
“Compile command: make -k”字样,此时把“make -k”删除后,运行相关编译命令(如现在我们应该键入“g++
test.cpp –o test”),如图3所示;
图3 minibuffer下键入“g++ test.cpp –o test”命令以编译源文件
法2:我想大多C/C++程序员会选择第二种编译方法,同样的,键“M-x”,输入“eshell”或“shell”命令,进入“eshell”或
“shell”缓冲区,这里我们键入的命令是“eshell”,然后同样的键入“g++ test.cpp –o
test”命令以编译源文件,如图4所示;
图4 eshell下键入“g++test.cpp –o test”命令以编译源文件
5.运行编译后的可执行文件,同样的按照第4步中的打开eshell缓冲区,输入相关命令即可执行编译后文件,这里我们应该输入“./test”命令,如图5所示。
图5 输入“./test”命令以执行编译后文件
注意:当我们进入其他缓冲区后,再想切换到编辑过的缓冲区可以键入“C-b
buffername”以切换到目的缓冲区。注意编辑(修改)后的缓冲区的名字格式为“*buffername*”,如上面我们切换到
“test.cpp”缓冲区应该buffername应为“test.cpp”,在我们打开“eshell”缓冲区之前我们已将其保存过了,切换到
“test.cpp”后再想切换到之前打开的“eshell”缓冲区的buffername应为“*eshell*”,这个缓冲区我们修改过了;
B. win下emacs gcc的编译环境下,用gcc c1.c -o c1.exe 编译,已经编译成功,可我想请问下,接下来要如何输出
以下三种方法:
1. 在你输入 “gcc c5.c -o c5” 的地方 直接输入 ./c5 回车运行。
2. 【开始】-> 【运行】-> 输入 cmd 。 从命令提示符进入到你的工程目录。就是你下载编译文件的目录,输入 c5回车 运行。
3. 进到你当前目录,双击c5运行。
C. 在windows上用Emacs+auctex+ctex,编译总是出现“Latex: problems after [0] pages”请问如何解决
乱码,通常情况下,你把编码弄成utf8能够解决问题。
D. emacs在哪里下载,和安装方法。
总算看到有人问emacs的问题了,真不容易···
刚回答过一位仁兄的问题,不巧被网络封了,怨念中,下面给个粘贴版:
win下使用emacs不会是个好选择,但是也看个人喜好。
在xp和win7下使用过emacs,win8如此高大上的系统,没用过。想来emacs在win8下也不会有太大问题。下载区gun的主页就行了,这里有emacs for windows的gun下载主页:
http://ftp.gnu.org/gnu/emacs/windows/
向下拖,最后的列表,建议下emacs24.3版本。emacs的更新是很实在的,不会说像一些国产商业软件一样,屁大点事都弄个更新,eamcs每次更新都会有很大的变化,而且新版本稳定后也更好用。
emacs在win中安装有2中方式:直接下载二进制文件 和 下载源码编译。
一般来说,直接从上面的连接下载编译好的emacs就行了,这个一般是用MGwin在windows下编译的。自己弄的话,下个mgwin或cygwin,手动make编译,但不推荐这么做,挺折腾,各种依赖包,时间也很长。如果真想体验一把,请另行网络,有教程。
eamcs想在win下用的舒坦对新手来说不是件容易的事。不清楚是谁鼓动你在win下用emacs写C的。如果你没有特殊的需求,比如,主要开发工作针对linux,建议你直接使用VS来写VC,方便直接,开箱即用。
emacs是个geek味道很浓的东西,具体体现就是:
没插件啥也干不好
插件安装千奇百怪没有统一的方式,好在24.3的elpa一定程度上缓解了到处找插件的问题,但是治标不治本。
配置过程是在使用elisp编程,门槛相对较高,起码比鼠标点来点去高不少
插件之间存在一些冲突,因为都是爱好者开发的,单个插件可能经过测试,但是这些东西放一块好不好使,只有天知道。当然,知名的插件肯定是没问题的,但是那些偏门的东东,就不好说了。
emacs使用,包括插件自带的说明文档,都不可能有中文支持,纯英文虽然很练水平,但是对一些人,起码是我来说,很头痛。
基本就是这些。不是说emacs有什么不好,都说高手才会使用emacs,所以这个东西,从来都不是对新手准备的,对新人相当的不友好。如果你用过vim,可能会觉着emacs初始的工作方式比vim好太多,起码不会按个esc就啥也输不进去。但是相信我,你被骗了,真的。想让此等神器按你的方式工作,不折腾个欲仙欲死是不大可能了。geek么,就喜欢折腾,如果你是这样的人,恭喜你,你找到了世界上最好玩的玩具,它能从各方面满足你折腾与探索之心,尽情享吧。
如果你还是想用eamcs,体验下这个gnu的拳头产品的魅力,下面可以给点建议:
下载emacs后,请完成最基本的配置,找到.emacs.d和.emacs文件所在位置,这个在windows下很多人一头雾水。如果有疑惑,请网络 emacs中文网。推荐用注册表方式指定home目录。
做好心理准备,最少在一星期之内,你不可能用它开始工作。
花半个小时看emacs toturial。emacs刚启动的欢迎界面上有连接,也可以在help菜单下找到
熟悉了基本,可以去网上点配置贴到.emacs文件中,顺带瞅瞅elisp的尊容,以后要经常和它打交道。在这个过程中,你会见识到emacs在几行elisp代码下翻天覆地的变化,起码表面上看起来,完全就是2个东西。
推荐篇文章:“一年成为eamcs高手”http://blog.csdn.net/redguardtoo/article/details/7222501 想少走弯路,可以严格按照上面说的做。
如果你看了第5条,觉着有道理,请下载牛人的配置,去github逛逛吧,你需要一个gitextension,请自行安装,这个可以帮你在后面方便地管理你的.eamcs.d文件夹。配置新手推荐 emacs-starter-kit或者 prelude,它们都在github上,请自行搜索。我用的是第二个,配置比较基础,感觉还不错。
如果你已经会用牛人配置的基本功能了而且还对emacs有很大的热情,可以着手配置C开发环境了。
基本上这样。那个问题是在问怎么在windows下用emacs写C,后面是一些C开发插件的配置,这个自动帮你pass了。
度娘手下留情,不要封我答案。
E. 求emacs高手,Windows下的emacs编译问题
这跟emacs有个鸟的关系啊,这是gdb调试器的问题嘛。你调试程序,当然要先下断点,再运行啦。
比如先输入 b 3 就是在第三行下个断点
run 开始运行
到第三行就停住了
n 到下一行,就这么简单。
F. emacs编译时显示:command not found,这是怎么回事
看readme文件吧,你这样说太宽泛了,很少人能直接给你答案的。为什么要 编译emacs呢,直接用自己的发行版的安装工具安装不就行了吗?
G. 我是才开始学C语言,用emacs24.1写了一个源代码,但是我不知道怎么将它弄成可执行文件,还有弄成可执行文
首先你需要编译你的源代码,才能生成可执行文件,而编译代码又根据系统和环境的不同有很多不同方法。
如果你用的是windows,建议你在VC6.0或者VS里面新建工程,然后将你的源代码拷贝进去,再编译,就会生成一个exe可执行文件,要执行这个可执行文件只需要双击它就可以了。
如果你用的是linux,那么你需要安装gcc,然后执行命令gcc -Wall XX.c -o XX,就可以生成一个可执行文件了,其中XX.c是你用emacs写好的源代码,XX是生成的可执行文件,要运行这个可执行文件,你可以执行命令./XX。
这些都是最基础的东西,建议你先看书学习。
H. emacs编辑器的下载及使用安装问题
win下使用emacs不会是个好选择,但是也看个人喜好。
在xp和win7下使用过emacs,win8如此高大上的系统,没用过。想来emacs在win8下也不会有太大问题。下载区gun的主页就行了,这里有emacs for windows的gun下载主页:
http://ftp.gnu.org/gnu/emacs/windows/
向下拖,最后的列表,建议下emacs24.3版本。emacs的更新是很实在的,不会说像一些国产商业软件一样,屁大点事都弄个更新,eamcs每次更新都会有很大的变化,而且新版本稳定后也更好用。
emacs在win中安装有2中方式:直接下载二进制文件 和 下载源码编译。
一般来说,直接从上面的连接下载编译好的emacs就行了,这个一般是用MGwin在windows下编译的。自己弄的话,下个mgwin或cygwin,手动make编译,但不推荐这么做,挺折腾,各种依赖包,时间也很长。如果真想体验一把,请另行网络,有教程。
eamcs想在win下用的舒坦对新手来说不是件容易的事。不清楚是谁鼓动你在win下用emacs写C的。如果你没有特殊的需求,比如,主要开发工作针对linux,建议你直接使用VS来写VC,方便直接,开箱即用。
emacs是个geek味道很浓的东西,具体体现就是:
没插件啥也干不好
插件安装千奇百怪没有统一的方式,好在24.3的elpa一定程度上缓解了到处找插件的问题,但是治标不治本。
配置过程是在使用elisp编程,门槛相对较高,起码比鼠标点来点去高不少
插件之间存在一些冲突,因为都是爱好者开发的,单个插件可能经过测试,但是这些东西放一块好不好使,只有天知道。当然,知名的插件肯定是没问题的,但是那些偏门的东东,就不好说了。
emacs使用,包括插件自带的说明文档,都不可能有中文支持,纯英文虽然很练水平,但是对一些人,起码是我来说,很头痛。
基本就是这些。不是说emacs有什么不好,都说高手才会使用emacs,所以这个东西,从来都不是对新手准备的,对新人相当的不友好。如果你用过vim,可能会觉着emacs初始的工作方式比vim好太多,起码不会按个esc就啥也输不进去。但是相信我,你被骗了,真的。想让此等神器按你的方式工作,不折腾个欲仙欲死是不大可能了。geek么,就喜欢折腾,如果你是这样的人,恭喜你,你找到了世界上最好玩的玩具,它能从各方面满足你折腾与探索之心,尽情享吧。
如果你还是想用eamcs,体验下这个gnu的拳头产品的魅力,下面可以给点建议:
下载emacs后,请完成最基本的配置,找到.emacs.d和.emacs文件所在位置,这个在windows下很多人一头雾水。如果有疑惑,请网络 emacs中文网。推荐用注册表方式指定home目录。
做好心理准备,最少在一星期之内,你不可能用它开始工作。
花半个小时看emacs toturial。emacs刚启动的欢迎界面上有连接,也可以在help菜单下找到
熟悉了基本,可以去网上点配置贴到.emacs文件中,顺带瞅瞅elisp的尊容,以后要经常和它打交道。在这个过程中,你会见识到emacs在几行elisp代码下翻天覆地的变化,起码表面上看起来,完全就是2个东西。
推荐篇文章:“一年成为eamcs高手”http://blog.csdn.net/redguardtoo/article/details/7222501 想少走弯路,可以严格按照上面说的做。
如果你看了第5条,觉着有道理,请下载牛人的配置,去github逛逛吧,你需要一个gitextension,请自行安装,这个可以帮你在后面方便地管理你的.eamcs.d文件夹。配置新手推荐 emacs-starter-kit或者prelude,它们都在github上,请自行搜索。我用的是第二个,配置比较基础,感觉还不错。
如果你已经会用牛人配置的基本功能了而且还对emacs有很大的热情,可以着手配置C开发环境了。
下面说说emacs下C开发环境的搭建,基本的插件有这几个:
ecb cedet tabbar tabbar-ruler yasnippet auto-complete
分别说说:
ecb,emacs code browser,用于浏览代码,大致看起来是这个样子:
具体安装一言难尽,请多网络谷歌。这个时候网络不一定好使,google相对可靠的多。这个是emacs插件的配置,还缺mgwin,这个要额外配置,添加exec-path。具体请网络,我没配过,我emacs都是org写文档用的,偶尔骚包用eamcs写,回头VS编译。
如果上面的你都折腾过了,你应该会发现新的问题:老子折腾了这么久,为什么感觉还没个VC6+VAX来的实在?问题出在cedet的组件semantic上。它负责进行语法分析,生成tags,显示函数,进行跳转和补全。但是这个东西是基于静态分析的且是纯elisp实现的,效率上可想而知。VS的补全是动态进行的且它本身可以利用编译器的分析结果,所以速度快,补全能力很强。semantic则相反,它不能利用编译器生成的语法分析树,自己扫描静态文件,这个效率可想而知。解决方法么,在linux下有个GCC的修改版本,可以将分析结果借用给semantic,貌似要额外进行一些配置,这样配置过后,semantic就会快很多,起码不会出现打开个C文件,分析半分钟这么夸张。同样的问题出在auto-complete和yasnippet上。它们同样没有编译器分析结果做支持,所以补全基本是基于缩略词的,相当的不智能。这些是emacs作为C开发环境的缺点。
这些问题的出现,并不是emacs本身不够强,实在是没有大厂商的支持,靠一群爱好者进行义务开发和维护,很大程度上限制了eamcs作为IDE上的能力。本身这个也不是大问题,emacs被爱好者称为操作系统,IDE只是人们对它的一个期望罢了,这本来也不是它的强项,通用和扩展性才是它的灵魂。用emacs和VS比C开发效率,这本来就不公平,有本事你也去linux命令行跑跑看嘛。
lz加油吧,每个喜爱emacs并为之付出的人,都会得到回报。不要太过计较一时的得失,emacs绝对是值得信赖的工具,值得你为他付出。这个道理其实很简单:除了emacs,你再也找不出一个程序,能够完全按照你的意愿工作。
emacs的神奇来源于它惊天地泣鬼神的设计理念:编写lisp解释器,解释elisp语言,来制作一个编辑器,这本来就是天才的构想。在emacs的世界里,绝大多数的功能都是lisp函数的求值带来的。任何的按键,都会触发解释器对elisp函数或C函数的求值,运行,然后产生响应的行为。这点可以在eamcs中使用C-h k 来验证,这个快捷键绑定到了describe-key,可以描述你的按键所触发的函数,它的功能和所在的文件,你可以很方便地进入这个文件内部观察elisp实现。emacs根本就是个解释器+脚本语言的黄金搭档。通过elisp编程,你能控制emacs的任何行为,自己编写elisp函数实现一些自动化操作,比如通过一个按键自动格式化当前buffer中的所有代码,编写正则匹配函数并绑定到响应快捷键,这样可以通过按下你绑定的按键序列,让emacs自动隐藏指定的行,比如注释,自动替换选中区域的指定字符序列等等。
总之,emacs无所不能,这个源于它奇思妙想的伟大设计。
以上。
I. windows 下emacs无法运行程序,command not found
用过Linux的人知道在centos下是有setup这个命令的。用于系统服务,网络配置,X配置等方面的图形配置界面。在“command not find ”说明你还没有安装支持这个命令的软体套件,安装它即可,命令 yum -y install setuptool。
补充你的追问:
首先确认你是否安装了软件
[root@vpn ~]# rpm -qa |grep iptables
iptables-ipv6-1.3.5-5.3.el5_4.1
iptables-1.3.5-5.3.el5_4.1
iptables-devel-1.3.5-5.3.el5_4.1
没有的话,安装它:
[root@vpn ~]#yum -y install iptables*
添加到chkconfig:
[root@vpn ~]# chkconfig --add iptables
[root@vpn ~]# chkconfig --list|grep iptables
J. 怎么用emacs编译程序
ctrl + x ctrl + f可以打开或者新建文件.
我不知道你是在windows下还是在linux下.
如果是在windows下,如果你知道怎么用记事本写程序,那你就能用emacs写程序.
当然,这是最简单的用法.
ctrl + h t 可以看入门教程.更复杂的用法别人没法教你.emacs号称神之编辑器,而"神"不是教出来的,而是自己折腾出来的.