zoukankan      html  css  js  c++  java
  • Linux程序设计(搭建开发环境--curses)


    看官们。咱们今天要说的内容。是前面内容的一点小补充,详细的内容是:安装curses开发包。以搭建

    开发环境。闲话休说,言归正转。


    我们在前面说过搭建开发环境的内容,主要说了开发环境中的GCC和VIM,今天咱们会说怎样搭建开发环境

    中的另外一个工具: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.打开新立得包管理器,点击搜索button。在搜索栏中输入:curses。

    2.在搜索出的结果中查找与curses相关的包。

    3.从搜索结果中找到libncurses5和libncurses5-dev这两个比較包比較像。到底哪个包是我们想要

    的呢?能够通过包的描写叙述来区分,选中包名,点出属性button。查看包的属性,包的描写叙述在属

    性中。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的话。能够点击这里查看前面的文章;假设忘记怎样安

    装VIM的话,能够点击这里查看前面的文章。另外,我们在这里仅仅是说怎样安装curses包来搭建开发

    环境。关于包的使用,以及其他工具的使用不做介绍。假设大家感兴趣,能够点出这里查看怎样使用

    GCC,点击这里查看怎样使用VIM。


    各位看官们,今天的内容就到此为止。欲知后事怎样,且听下回分解。


  • 相关阅读:
    Element-ui前端自定义排序
    elementUI --- el-select 下拉框样式覆盖
    Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数
    ORA-01476: divisor is equal to zero解决方法
    Linux下安装Mysql
    Fastdfs安装
    java基础
    Markdown学习
    Maven构建SpringMVC环境报错“java.lang.ClassNotFoundException: org.springframework.web.servlet. DispatcherSe
    解决IDEA提示Untrusted Server's certificate 证书不可用( Server's certificate is not trusted )
  • 原文地址:https://www.cnblogs.com/mthoutai/p/7191673.html
Copyright © 2011-2022 走看看