您现在的位置: 365建站网 > 365学习 > Linux错误 curses.h:No such file or directory解决方法

Linux错误 curses.h:No such file or directory解决方法

文章来源:365jz.com     点击数:1221    更新时间:2018-05-27 22:45   参与评论
在Linux上编译代码时,遇到以下错误信息:

curses.h:No such file or directory

查阅相关资料,整理了下解决方案:

是因为没有安装ncurses

sudo apt-get install libncurses5-dev

如果不是在Ubuntu环境下,可以下载安装ncurses-devel rpm包也可以解决问题: rpm -ivh ncurses-devel-5.5-24.20060715.i386.rpm

在Debian/ Ubuntu Linux系统中,我们可以使用以下命令来安装ncurses:

$ sudo apt-get install libncurses5-dev libncursesw5-dev

而我使用的是 CentOS版本的Linux,其解决办法有点不一样,具体是,在RHEL / Fedora / CentOS Linux中,我们使用以下命令:

# yum install ncurses-devel ncurses


安装过程大致如下:

[root@localhost test]# yum install ncurses-devel ncurses

Loaded plugins: fastestmirror

Loading mirror speeds from cached hostfile

* addons:centos.ustc.edu.cn

* base:centos.ustc.edu.cn

* commercial-addons:elastix.adaptixnetworks.com

* elastix-base:elastix.adaptixnetworks.com

* elastix-extras:elastix.adaptixnetworks.com

* elastix-updates:elastix.adaptixnetworks.com

* epel:mirrors.neusoft.edu.cn

* extras:ftp.sjtu.edu.cn

* updates: centos.ustc.edu.cn

Excluding Packages from CentOS-5 - Addons

Finished

Excluding Packages from CentOS-5 - Base

Finished

Excluding Packages from CentOS-5 - Extras

Finished

Excluding Packages from CentOS-5 - Updates

Finished

Setting up Install Process

Package ncurses-5.5-24.20060715.i386 already installed andlatest version

Resolving Dependencies

--> Running transaction check

---> Package ncurses-devel.i386 0:5.5-24.20060715 set tobe updated

--> Finished Dependency Resolution



Dependencies Resolved



==================================================

Package               Arch         Version                  Repository    Size

==================================================

Installing:

ncurses-devel         i386         5.5-24.20060715          base         1.6 M



Transaction Summary

==================================================

Install       1Package(s)

Upgrade       0Package(s)



Total download size: 1.6 M

Is this ok [y/N]: y

Downloading Packages:

ncurses-devel-5.5-24.20060715.i386.rpm                   | 1.6 MB     00:01

Running rpm_check_debug

Running Transaction Test

Finished Transaction Test

Transaction Test Succeeded

Running Transaction

  Installing     : ncurses-devel                                            1/1

Installed:

  ncurses-devel.i3860:5.5-24.20060715

Complete!

安装完成后,重新编译程序,一切正常!

Linux执行.sh文件,提示No such file or directory的问题

问题描述 


解决方法 

分析原因,可能因为我平台迁移碰到权限问题我们来进行权限转换 

1)在Windows下转换: 

利用一些编辑器如UltraEdit或EditPlus等工具先将脚本编码转换,再放到Linux中执行。转换方式如下(UltraEdit):File-->Conversions-->DOS->UNIX即可。 

2)方法 

用vim打开该sh文件,输入: 
[plain] 
:set ff 
回车,显示fileformat=dos,重新设置下(www.111cn.net)文件格式: 
[plain] 
:set ff=unix 
保存退出: 
[plain] 
:wq 
再执行,竟然可以了 

3)在linux中的权限转换 

也可在Linux中转换: 

首先要确保文件有可执行权限 

#chmod u+x filename 

然后修改文件格式 

#vi filename 

三种方法都可以方便快速的解决关于Linux执行.sh文件,提示No such file or directory这个问题了。 


在window平台下,写好shell脚本文件,迁移到linux平台,赋过可执行权限,执行该sh文件,
却提示No such file or directory。ls 了下,确实有该文件,怎么会事呢,
难道是文件格式兼容性问题?用vim打开该sh文件,输入:
[plain]
:set ff  
回车,显示fileformat=dos,重新设置下文件格式:
[plain]
:set ff=unix  
保存退出:
[plain]
:wq  
    再执行,竟然可以了。这个事情又给我提了次醒,程序尽量在linux下编写,迁移时,也许会少很多问题。

如对本文有疑问,请提交到交流论坛,广大热心网友会为你解答!! 点击进入论坛


发表评论 (1221人查看0条评论)
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码: 点击我更换图片
最新评论
------分隔线----------------------------