关闭

Linux下c++编程与kdevelop的环境配置

标签: 编程linuxc++buildcompiler编译器
457人阅读 评论(0) 收藏 举报
分类:

KDevelop是一个支持多程序设计语言的集成开发环境。它运行于Linux和其它类unix环境。
KDevelop本身不包含编译器,而是调用其它编译器来编译程序。

1.打开新立得软件包管理器

2.查找KDevelop,在结果中当然是勾选KDevelop,还有KDevelop系列里面那个带"-dev"后缀的包,当然你可以不勾

3.装好前面的包后安装如下的包:

    automake
    autoconf
    g++
    libtool
    cmake

    这些装了之后基本就可以运行了,但是你想看到输出的话就还得装这个东西:Konsole

    使用KDevelop的步骤:
    1.新建一个工程
    2.写代码
    3.Build->Run Automake & friends
    4.Build->Run Configure
    5.Build->Compile File
    6.Build->Build Project
    7.Build->Execute Program(Shift+F9)

    注意:在 4.Build->Run Configure 这一步中很有可能会出现这个问题configure: error: C++ compiler cannot create executables

    这是kdevelop自身环境变量的设置问题

    在kdevelop 中开启Project Options,然后在Configure Options的内容中,分别确认C和c++使用compiler,在各自的Compiler command(cc)和Compiler command(cxx)中分别填入gcc和g++.在对话框里面按下OK之后, IDE会问你是否要重建,选rerun即可。

基本步骤
一般而言,用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】
编写程序文件
通过菜单操作【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 ,可以直接打开该工程进行修改。
如何使用已有的源文件?
在KDevelop 主窗口的右侧有一个Automake Manager标签。点击该标签,就可以看到本工程源文件所在的文件夹以及各文件。在列有文件的那个窗口上方有工具条,其中就是用来添加文件的。添加文件有两种方式,一种是链接(link)方式,另一种是复制(copy)方式。

4.遇到的问题,按照上面的方法编译第一个程序时遇到了问题:

a)运行Run automake&friend时,报错:

这是由于没有安装automake造成的,解决方法是在终端中运行下列代码:

 sudo apt-get install automake

b)再次运行Run automake&friend时遇到错误:

这是由于没有安装libtool造成的,解决方法是

 sudo apt-get install libtool

c)终于编程通过了,但是在Excecute program又提示错误了:
konsole not found

这是由于没有安装konsole造成的,安装就好了

sudo apt-get install konsole

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1717003次
    • 积分:22032
    • 等级:
    • 排名:第324名
    • 原创:164篇
    • 转载:2082篇
    • 译文:12篇
    • 评论:121条
    文章存档
    最新评论