[分享]KDevelop扫盲帖

软件和网站开发以及相关技术探讨
头像
feeling
帖子: 175
注册时间: 2006-04-29 20:10
来自: 北京·昌平
联系:

[分享]KDevelop扫盲帖

#1

帖子 feeling » 2006-09-21 14:37

安装和启动
使用apt-get可以很容易的得到KDevelop,具体如下:(以KDE为例)
1. apt-get build-dep gcc
2. apt-get install kdevelop3
3. 如果你无法获取这些软件包的信息,可以尝试修改/etc/apt/sources.lst

安装完成后,从开始菜单中就可以启动Kdevelop:
【开始】→【应用程序】→【软件开发】→【Kdevelop】
利用Kdevelop可以编写C和C++程序,它把编辑、编译、调试和运行集成到一起,给编程工作带来很
大方便。

基本步骤
一般而言,用Kdevelop编程大体要经历如下几个步骤。编程是比较复杂的,很难一次成功,这些步骤
可能要反复进行多次。

第一步,新建工程
可以通过菜单操作启动相应的向导程序,借助它完成工程的初建工作。
【Project】→【New Project】
在新建工程过程中,主要需要指定工程文件保存位置、工程名称、工程类型,并且可以填写编程作者
的信息。根据所选工程类型(比如,是文本界面的程序还是图形界面的程序,是C程序还是C++程序),向导程序会自动生成一批模板文件。

第二步,编辑程序文件
向导程序一般会创建一些程序文件,应该对这些文件进行编辑以满足特定的编程需要。
还可以执行菜单操作来增加新的文件。
【File】→【New】
上述操作后,会出现一个对话框,用于指定文件名和文件类型。根据文件类型的不同,会自动设定合
适的扩展名。注意,“Add to project”复选框应该勾选上以确保新文件被加入到当前的工程中。

第三步,生成源码结构
在编辑好程序文件后,要先借助GNU Build System生成系统生成源码结构。在增加了新文件(或目
录)、修改了文件(或目录)名、改变文件的保存位置之后,都应该重新生成源码结构。具体而言,生成源码结构包括autoconf、automake等操作,把每个子目录的Makefile.am变成了Makefile.in。具有源码结构的程序文件包可以在任何UNIX、LINUX的系统上使用简单的命令(即configure/make/make install等)进行配置、编译、连接和安装。
可以执行菜单操作来生成源码结构:
【Build】→【Run automake&conf】

第四步,配置,即运行configure
configure是一个脚本,用来确定所处系统的细节,比如使用何种编译器、何种库,以及编译器和库的
保存位置,并把Makefile.in的相应部分进行替换,形成Makefile。
可以执行菜单操作来进行配置:
【Build】→【Run configure】

第五步,编译连接
执行菜单操作【Build】→【Built Project】即可完成编译连接,形成可执行文件。默认情况下,这种可执行文件是带有源码调试符号的。
对于多文件的程序,一般需要对每一个文件分别进行编译生成目标文件。当每个文件的编译通过之后,再统一进行编译连接。单独编译当前正在编辑的文件的菜单操作是:
【Build】→【Compile File】

第六步,运行
如果想在KDevelop的控制下运行已编译连接好的程序,可以执行菜单操作:
【Build】→【Excecute program】
如果想单独运行程序,则需要先安装,然后在命令行中输入相应的可执行文件的名字(一般来讲,就是
工程的名字)即可。KDevelop会把可执行文件放在/usr/local/bin之中
【Build】→【Install】
人生若只如初见,何事秋风悲画扇?
头像
feeling
帖子: 175
注册时间: 2006-04-29 20:10
来自: 北京·昌平
联系:

#2

帖子 feeling » 2006-09-21 14:40

编写程序文件
通过菜单操作【Project】→【New Project】启动新建工程向导程序,选择工程类型,并指定 工程名称及其保存位置,如图所示。接下来一路点击Next即可完成工程的创建工作。
向导程序会自动生成一个含有主函数的文件。以此文件是一个模板,在它的基础上修改并添加代码,
即可编写需要的程序。

编译
程序写好后,应该把文件保存起来,然后按照前面提到的步骤,生成源码结构、配置、编译,即依次
执行如下菜单操作:
【Build】→【Run automake&conf】
【Build】→【Run configure】
【Build】→【Compile File】
每一个操作若能正常完成,在Messages窗口中会出现Success的提示。如果没有Success的提示,则表明相应的操作失败,应查明原因。
一般来讲,生成源码结构和配置这两个操作都能顺利通过。
如果编译连接是首次进行,则一般会失败,因为很少有人能一次写出没有任何语法错误的程序。查看
Messages窗口中的提示信息,可以了解哪些地方出现了语法错误。单击某一条错误提示信息,KDevelop会自动把光标定位到发生该错误的语句上。
依据错误提示,修正程序中的语法错误,然后再次尝试编译,直到出现Success的提示。
经常出现的一种情况是,程序上的一个语法错误会导致多条错误信息的出现。因此,应该把第一条错
误信息认真处理好,再从随后的错误信息中随机选择几条加以处理,然后就再次尝试编译,看还有没有错误信息。如此反复多次,直到把所有的错误提示消除掉,编译就成功了。不要把所有错误信息都依次处理完再尝试编译,那样的效率比较低。

生成可执行文件
编译成功后,执行菜单操作【Build】→【Built Project】即可生成相应的生成可执行文件。

调试
接下来,可以执行菜单操作【Build】→【Excecute program】试运行程序。这种运行是在KDevelop的控制下进行的。因此,如果出现“死循环”,可以执行菜单操作【Build】→【Stop】或按Esc键即可中止程序的运行。
如果在程序中存在逻辑错误,就得不到期望的结果。逻辑错误的排除比较困难。必须对程序进行仔细
的分析才能找到错误的原因。
一般的逻辑错误可以根据程序的运行表现加以判断。比较深层次的逻辑错误则需要借助调试工具。
本章前面介绍的调试工具GNU gdb就是一个很好的工具,可以用它对程序进行仔细分析,查找逻辑错
误的根源。默认情况下,经过【Build】→【Built Project】操作之后,可以在工程目录下的/debug/src/中找到带源代码调试符号的可执行文件。
发现逻辑错误后,就要修改程序,重新编译连接。然后再试运行。如果仍然得不到期望的结果,说明
程序中还有逻辑错误,应再次进行分析。如此反复多次,直到消除全部的逻辑错误。

发布可执行文件
如果只想发布程序的可执行文件,可以先调整项目的编译连接选项,选择优化编译的方式。这样可以
得到更小更快的可执行文件。
可以通过菜单【Project】→【Build Configuration】修改编译连接选项。此菜单之下有三种选项,默认为Debug,生成的可执行文件中含有源程序调试符号;还可以选择 Default或Optimized。选择Optimized时,编译连接时将进行优化,生成的可执行文件更小,执行起来也更快。
选择Debug时,可执行文件保存在工程目录下的/debug/src/中;选择Optimized时, 可执行文件保存在工程目录下的/optimized/src/中;选择Default时, 可执行文件保存在工程目录下的/src/中。
如果要发布可执行文件,应该选择Optimized的方式进行编译连接。

发布源程序
把工程目录及其中的所有文件打包即可形成源程序包。用户得到这个源程序包并解压后,不必安装KDevelop 就可以按标准方法进行编译和安装,即支持
configure,make,make install,make clean,make uninstall等命令。这个包也含有KDevelop的工程文件和其他相关的信息。因此,如果用户安装了KDevelop,可以直接打开该工程进行修改。
人生若只如初见,何事秋风悲画扇?
头像
feeling
帖子: 175
注册时间: 2006-04-29 20:10
来自: 北京·昌平
联系:

#3

帖子 feeling » 2006-09-21 14:41

如何使用已有的源文件?
在KDevelop主窗口的右侧有一个Automake Manager标签。点击该标签,就可以看到本工程源文件所在的文件夹以及各文件。在列有文件的那个窗口上方有工具条,其中就是用来添加文件的。添加文件有两种方式,一种是链接(link)方式,另一种是复制(copy)方式。
人生若只如初见,何事秋风悲画扇?
头像
jiaguwen
帖子: 62
注册时间: 2005-11-22 12:59
系统: Ubuntu 12.04

#4

帖子 jiaguwen » 2006-09-25 19:51

哇,真是好资料啊,谢谢LZ
头像
fiftymetre
帖子: 37
注册时间: 2006-09-29 15:06

#5

帖子 fiftymetre » 2006-09-29 22:39

感谢

很有帮助
luckiest
帖子: 27
注册时间: 2006-09-26 23:31

#6

帖子 luckiest » 2006-10-01 11:50

谢谢LZ,很详细。
但是我的kDevelop没有函数的自动缩进,可以设置吗?
luckiest
帖子: 27
注册时间: 2006-09-26 23:31

#7

帖子 luckiest » 2006-10-01 11:58

找到了。Settings->Configure Editor->Indetation,把Automatic Identation选成C style就好了。
这东东还真好用!
tuliangde
帖子: 10
注册时间: 2006-09-28 15:25

#8

帖子 tuliangde » 2006-10-16 16:27

feeling
安装了kdevelop以后好像还要安装很多东西才能顺利的编译通过project,麻烦LZ能不能列一份相关的需要配置的东西的清单,希望说详细点!小弟跪谢LZ了啊~~
我的kdevelop配置还有问题,希望帮帮忙啊~~
The God said: " let there be light." I denied. So there be darkness.
头像
feeling
帖子: 175
注册时间: 2006-04-29 20:10
来自: 北京·昌平
联系:

#9

帖子 feeling » 2006-10-27 9:32

tuliangde 写了:feeling
安装了kdevelop以后好像还要安装很多东西才能顺利的编译通过project,麻烦LZ能不能列一份相关的需要配置的东西的清单,希望说详细点!小弟跪谢LZ了啊~~
我的kdevelop配置还有问题,希望帮帮忙啊~~
KDevelop是一个IDE(集成开发环境),也就是一个集成了编辑、调试功能的工具,本身并不是一个编译器,它的编译是基于编译器gcc/g++的,你可能还需要安装gcc/g++
人生若只如初见,何事秋风悲画扇?
头像
feeling
帖子: 175
注册时间: 2006-04-29 20:10
来自: 北京·昌平
联系:

#10

帖子 feeling » 2006-10-27 9:46

也许你的gcc/g++没有安装好,试一试:

代码: 全选

apt-get build-dep gcc
apt-get build-essential
人生若只如初见,何事秋风悲画扇?
crazychong
帖子: 14
注册时间: 2007-01-18 9:10
来自: suzhou

#11

帖子 crazychong » 2007-02-06 13:14

顶一下,希望更多的新手能够看见
头像
阿呆
帖子: 39
注册时间: 2007-01-15 23:56
联系:

#12

帖子 阿呆 » 2007-02-08 0:27

:lol: 不错阿 ~~顶~~
lpzgbd
帖子: 52
注册时间: 2007-02-14 13:56
来自: swust

#13

帖子 lpzgbd » 2007-03-10 15:37

顶 。很好
不过请问楼主有没有它的详细的一些资料 如果有麻烦发到我的邮箱: wozhenailiping@gmail.com ,谢谢
isarc
帖子: 15
注册时间: 2006-12-26 16:22

[问题]怎样在kdevelop执行编译的程序

#14

帖子 isarc » 2007-03-25 16:33

求大牛解答
thanks
头像
qlhn
帖子: 736
注册时间: 2006-08-25 10:37
联系:

#15

帖子 qlhn » 2007-03-27 14:18

好贴!长见识.
回复