编译过程中,termcap.h 文件找不到路径 licli.a终于生成
安装minicom2.3出现termcap.h错误解决方法
step 1: ./configure
result:OK
step 2: make
result: has a error
In file included from port.h:39,
from minicom.c:38:
/usr/include/ncurses/termcap.h:63: error: conflicting types for `tgetstr'
/usr/include/termcap.h:46: error: previous declaration of `tgetstr'
/usr/include/ncurses/termcap.h:65: error: conflicting types for `tgetent'
/usr/include/termcap.h:43: error: previous declaration of `tgetent'
/usr/include/ncurses/termcap.h:66: error: conflicting types for `tgetflag'
/usr/include/termcap.h:44: error: previous declaration of `tgetflag'
/usr/include/ncurses/termcap.h:67: error: conflicting types for `tgetnum'
/usr/include/termcap.h:45: error: previous declaration of `tgetnum'
/usr/include/ncurses/termcap.h:68: error: conflicting types for `tputs'
/usr/include/termcap.h:53: error: previous declaration of `tputs'
make[2]: *** [minicom.o] Error 1
make[2]: Leaving directory `/mnt/minicom-2.3/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/minicom-2.3'
resolve:
关掉/usr/include/ncurses/termcap.h 第3,65,66,67,68行中冲突类型的定义,然后再编译之,ok
62 #if !defined(NCURSES_TERM_H_incl)
63 extern NCURSES_EXPORT(char *) tgetstr (NCURSES_CONST char *, char **);
64 extern NCURSES_EXPORT(char *) tgoto (const char *, int, int);
65 extern NCURSES_EXPORT(int) tgetent (char *, const char *);
66 extern NCURSES_EXPORT(int) tgetflag (NCURSES_CONST char *);
67 extern NCURSES_EXPORT(int) tgetnum (NCURSES_CONST char *);
68 extern NCURSES_EXPORT(int) tputs (const char *, int, int (*)(int));
69 #endif
改为//===================================
62 #if !defined(NCURSES_TERM_H_incl)
63 #extern NCURSES_EXPORT(char *) tgetstr (NCURSES_CONST char *, char **);
64 #extern NCURSES_EXPORT(char *) tgoto (const char *, int, int);
65 #extern NCURSES_EXPORT(int) tgetent (char *, const char *);
66 #extern NCURSES_EXPORT(int) tgetflag (NCURSES_CONST char *);
67 #extern NCURSES_EXPORT(int) tgetnum (NCURSES_CONST char *);
68 #extern NCURSES_EXPORT(int) tputs (const char *, int, int (*)(int));
69 #endif
//===================================
step3:make install
result :OK
这样,就得到想要的minicom了!

ncurses简介及其使用方法
NCURSES不仅仅只是封装了底层的终端功能,而且提供了一个相当稳固的工作框架(Framework)用 以产生漂亮的界面。它包含了一些创建窗口的函数。而它的姊妹库 Menu、Panel和Form则是对CURSES基础库的扩展。这些库一般都随同CURSES一起发行。我们可以建立一个同时包含多窗口 (multiple windows)、菜单(menus)、面板(panels)和表单(forms)的应用程序。窗口可以被独立管理,例如让它卷动 (scrollability)或者隐藏。
菜单(Menus)可以让用户建立命令选项,从而方便执行命令。而窗体(Forms)允许用户 建立一些简单的数据输入和显示的窗口。面板(Panels)是NCURSES窗口管理功能的扩展,可以用它覆盖或堆积窗口。
你现在应该知道NCURSES可以做什么了。在你使用之前必须先下载它。你在安装操作系统时(Linux)应 该已经附带了。万一如果你的操作系统还没有安装NCURSES库,可以通过以下的途径可以下载得到:
下载并编译安装文件包:
你可以通过ftp://ftp.gnu.org/pub/gnu/ncurses/ncurses.tar.gz免 费下载NCURSES。
ftp://ftp.gnu.org/pub/gnu/ncurses
也可以通过GNU的FTP目录:http://www.gnu.org/order/ftp.html 找到提供免费下载NCURSES文件包的站点。最新发布的稳定版本为:5.2 20001021.(译者翻译时已经有5.4版本的NCURSES下载了)
包裹文件中的README和INSTALL文件是安装 NCURSES库的最主要资料。
通常是这样安装NCURSES的:
tar zxvf ncurses<version>.tar.gz #解压缩并且释放 文件包
cd ncurses<version> #进入解压缩的目录(注意版本)
./configure #按照你的系统环境制作安装配置文件
make #编译源代码并且编译NCURSES库
su root #切换到root用户环境
make install #安装编译好的NCURSES库
./configure
sudo make && make install
使用RPM安装文件:
可以在http://rpmfind.net 找到NCURSES的RPM格式安装包。可以在root模式下使用以下的命令安装:(以5.2版本为例)
rpm -vih 下载的RPM文件
===================================
如何解决Install ncurses(ncurses-devel) and try again
打开一个终端输入下面这条语句按回车进行安装即可。
apt-get install libncurses5-dev
编译过程中,termcap.h 文件找不到路径 licli.a终于生成的更多相关文章
- visual studio2010编译过程中出现COFF文件损坏的原因和方法总结
一.现象描述 笔者在用visual studio2010进行控制台程序进行程序编译时候,经常会遇到代码代码没有语法错误,但是编译不通过的现象.系统报错为 LINK : fatal error LNK1 ...
- bundler-sfm windows下编译过程中出现的错误
一.“sysdep1.h”文件缺失 错误提示: fatal error C1083: 无法打开包括文件: “sysdep1.h”: No such file or directory 这些作为这个软件 ...
- live555源码研究(十)------在编译过程中遇到的问题及解决方法
一.编译testOnDemandRTSPServer.cpp. 在testProgs项目中,加入testOnDemandRTSPServer.cpp进行编译,编译类型是编译成exe文件,在编译过程中会 ...
- [Git]07 如何在提交过程中忽略某些文件
一般我们总会有些文件无需纳入 Git 的管理,也不希望它们总出现在未跟踪文件列表.通常都是些自动生成的文件,比如日志文件,或者编译过程中创建的临时文件等.我们可以创建一个名为 .gitignor ...
- OpenJDK源码研究笔记(十三):Javac编译过程中的上下文容器(Context)、单例(Singleton)和延迟创建(LazyCreation)3种模式
在阅读Javac源码的过程中,发现一个上下文对象Context. 这个对象用来确保一次编译过程中的用到的类都只有一个实例,即实现我们经常提到的"单例模式". 今天,特意对这个上下文 ...
- colmap编译过程中出现,无法解析的外部符号错误 “__cdecl google::base::CheckOpMessageBuilder::ForVar1(void)”
错误提示: >colmap.lib(matching.obj) : error LNK2019: 无法解析的外部符号 "__declspec(dllimport) public: cl ...
- idea在maven中引入了jar包依赖,但是编译过程中报出XXX程序包不存在,已解决
idea在maven中引入了jar包依赖,但是编译过程中报出XXX程序包不存在 1. 报错具体情况 2. Project Structure中的Libraries没有任何红色波浪线 3. 发现自己要引 ...
- Python变量的作用域在编译过程中确定
为了节省读友的时间,先上结论(对于过程和细节感兴趣的读友可以继续往下阅读,一探究竟): [结论] 1)Python并不是传统意义上的逐行解释型的脚本语言 2)Python变量的作用域在编译过程就已经确 ...
- javascript中外部js文件取得自身完整路径得办法
原文:javascript中外部js文件取得自身完整路径得办法 有时候我们需要引入一个外部js文件,这个js文件又需要用到自己的路径或者是所在的目录,别问怎么又这么变态的需求,开发做久了各种奇葩需求也 ...
随机推荐
- Activiti系列:带有serviceTask的或者定时启动任务的流程部署失败的原因分析
在将两个带有serviceTask任务的流程部署到数据库的时候发现无法导入,最终分析出如下问题: 1)流程1是打算让定时启动事件可以每小时触发一次 由于原来是用 R/2015-11-01T01:00: ...
- HTML5 全屏特性
全屏功能是浏览器很早就支持的一项功能了,可以让你页面中的video, image ,div 等等子元素实现全屏浏览,从而带来更好的视觉体验,来看看怎么使用吧.先来看看有哪些API和事件支持. API ...
- 物联网-手机远程控制家里的摄像头(2) - POP3和SMTP的C语言精简实现
在上一篇博客里面,使用了Python来发送.接收mail,但是实际测试中出现了一些不稳定的 情况,而且Python和即将使用的opencv会不兼容,使用进程间通讯或者其他方法会让整个系统 显得复杂而且 ...
- gdb调试汇编堆栈分析
代码(src/05/gdb.c) int g(int x) { return x + 4; } int f(int x) { return g(x); } int main(void) { retur ...
- Jetty嵌入式Web容器攻略
Jetty是一个用 Java 实现.开源.基于标准的,并且具有丰富功能的 Http 服务器和 Web 容器.Jetty中应用最广泛的一项功能就是可以作为嵌入式Web容器. 在开发阶段,可以使用Jett ...
- Mysqli基础知识
相信原来在开始学习php的时候,很多人使用的数据库首选MySQL,连接数据库的扩展首选mysql扩展,但随着php版本的提高,mysql扩展正逐渐被mysqli和PDO所取代.正如使用mysql函数时 ...
- WCF 入门(15)
前言 度过了一个阳光明媚的周末. 一个阴霾的周日夜晚. 第15集 WCF里面的异常处理(1) Exception handling in WCF 大致看了一下,这个WCF视频里面总共有6集,这个是第 ...
- WCF入门(10)
前言 又堕落了,哎. 公司是做乙方的,工资还凑合,主要是项目基本都已完成,进去就是干维护,体会不到那种从头彻尾的成就感.项目中具体用了EF+Ado.net+WCF+WPF+(VB.net啊,坑啊,完全 ...
- Oracle数据库sys为什么只能以sysdba登录
1.我们都知道,Oracle有两个具有dba角色的用户,分别是sys与system,他们都可以以sysdba身份登录数据库.既然system具有dba角色,为什么还分配他sysoper身份? [sys ...
- 关于obj和基本类通过函数参数传进去执行是否改变原来的值
var obj = { p1 : 1, p2 : 2 }; (function(_/* 这个东东是地址的应用哦 */){ _.p1 = 3, _.p2 = 4 })(obj) var i = 2; ( ...