红联Linux门户
Linux帮助

Linux程序设计(搭建开发环境--curses)

发布时间:2016-10-13 21:12:27来源:blog.csdn.net/talk_8作者:talk_8
讲的内容是:安装curses开发包,以搭建开发环境。闲话休说,言归正转。
curses是Linux上的一个图形库,不过我们使用的Mint只安装了库文件,没有安装与该库相关的头文件。没有这些头文件,就不能进行相关的开发工作。因此,如果我们想使用Linux开发一些简单的图形软件的话,就需要安装与该相关的头文件,下面是详细的安装过程:
 
1.如果熟悉Linux目录结构的话,可以使用命令查看。查找库文件的命令如下:
ll /usr/lib/i386-linux-gnu/ | grep *curses* //没有结果,说明库文件不在这个目录中
ll /lib/i386-linux-gnu/ |grep *curses*
Binary file libncurses.so.5.9 matches   //有结果,说明库文件在这个目录中
 
2.库文件有了,但是还需要与库文件相关的头文件:curses.h,查找头文件的命令如下:
ll /usr/include/i386-linux-gnu/ |grep *curses* //没有结果,说明头文件不在这个目录中
 
3.没有头文件,只能自己安装。
头文件在软件包中,安装软件包后就可以找到头文件,但是我们不知道软件包的名字,因此,使用命令搜索一下:
apt-cache search curses
搜索到的结果如下:
bittornado - bittorrent client (and tracker) with console and curses interfaces
iptraf - Interactive Colorful IP LAN Monitor
libcunit1-ncurses - Unit Testing Library for C (ncurses)
libcunit1-ncurses-dev - Unit Testing Library for C (ncurses) -- development files
libncurses5-dbg - debugging/profiling libraries for ncurses
libncurses5-dev - developer's libraries for ncurses
libncursesw5 - shared libraries for terminal handling (wide character support)
libncursesw5-dbg - debugging/profiling libraries for ncursesw
libncursesw5-dev - developer's libraries for ncursesw
libtinfo-dev - developer's library for the low-level terminfo library
...//还有很结果,这里不一列出
我们看到libncurses5-dev - developer's libraries for ncurses这个包的描述后发现它就是我们想要的包,因此可以安装它。
 
4.安装libncurses5-dev包到Mint中,具体的命令如下:
apt-get install libncurses5-dev   //需要root权限才能执行该命令
正在读取软件包列表... 完成
正在分析软件包的依赖关系树       
正在读取状态信息... 完成       
将会安装下列额外的软件包:
libtinfo-dev
建议安装的软件包:
ncurses-doc
下列【新】软件包将被安装:
libncurses5-dev libtinfo-dev
升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 492 个软件包未被升级。
需要下载 237 kB 的软件包。
解压缩后会消耗掉 1,176 kB 的额外空间。
您希望继续执行吗? [Y/n] y            //确认是否需要安装包,输入y表示安装
获取:1 http://archive.ubuntu.com/ubuntu/ trusty/main libtinfo-dev i386 5.9+20140118-1ubuntu1 [71.2 kB]
获取:2 http://archive.ubuntu.com/ubuntu/ trusty/main libncurses5-dev i386 5.9+20140118-1ubuntu1 [166 kB]
下载 237 kB,耗时 2秒 (92.3 kB/s)
Selecting previously unselected package libtinfo-dev:i386.
(正在读取数据库 ... 系统当前共安装有 158123 个文件和目录。)
Preparing to unpack .../libtinfo-dev_5.9+20140118-1ubuntu1_i386.deb ...
Unpacking libtinfo-dev:i386 (5.9+20140118-1ubuntu1) ...
Selecting previously unselected package libncurses5-dev:i386.
Preparing to unpack .../libncurses5-dev_5.9+20140118-1ubuntu1_i386.deb ...
Unpacking libncurses5-dev:i386 (5.9+20140118-1ubuntu1) ...
正在设置 libtinfo-dev:i386 (5.9+20140118-1ubuntu1) ...
正在设置 libncurses5-dev:i386 (5.9+20140118-1ubuntu1) ...
 
5.验证一下我们要找的头文件:curses.h是否已经包含到Mint中,具体的命令如下:
ll /usr/include/ |grep curses.h  
-rw-r--r--  1 root root  77809  3月 23  2014 curses.h
lrwxrwxrwx  1 root root      8  3月 23  2014 ncurses.h -> curses.h
从命令的结果中,可以看到头文件:curses.h已经包含到系统中了,说明成功安装了包:libncurses5-dev。
我们可以该包开发相关的软件了。
 
如果对Linux目录结构不熟悉,而且也不熟悉相关的Linux命令,那么可以使用图形化工具:新立得包管理器进行安装。具体的操作过程如下:
1.打开新立得包管理器,点击搜索按钮,在搜索栏中输入:curses。
2.在搜索出的结果中查找与curses相关的包。
3.从搜索结果中找到libncurses5和libncurses5-dev这两个比较包比较像,究竟哪个包是我们想要的呢?可以通过包的描述来区分,选中包名,点出属性按钮,查看包的属性,包的描述在属性中。libncurses5包的描述如下:
这个包中包括运行那些使用ncurses编译的程序所必须的共享库。
libncurses5-dev包的描述如下:
This package contains the header files, static libraries and symbolic links that developers using ncurses will need.
大家从描述中可以看到,libncurses5-dev就是我们想要的包。
4.点击右键标记安装,就可以安装了。
我们通过对比后发现安装ncurses和安装gcc,vim的命令是一样的,只是验证安装成功与否时不一样。当然了,如果大家忘记如何安装GCC的话,可以查看下图:
Linux程序设计(搭建开发环境--curses)
如果忘记如何安装VIM的话,可以查看下图:
Linux程序设计(搭建开发环境--curses)
另外,我们在这里只是说如何安装curses包来搭建开发环境,关于包的使用,以及其它工具的使用不做介绍。如果大家感兴趣,可以查看下图如何使用GCC:
Linux程序设计(搭建开发环境--curses)
下图查看如何使用VIM:
Linux程序设计(搭建开发环境--curses)
 
本文永久更新地址:http://www.linuxdiyf.com/linux/25012.html