当前位置: 技术问答>linux和unix
如何解决 curses.h:No such file or directory
来源: 互联网 发布时间:2016-12-15
本文导语: 我是这样编译的然后报错 cc cursers.c -lcurses -ltermlib 错误如下: cursers.c:2:21: 错误: curses.h:No such file or directory cursers.c: 在函数 ‘main’ 中: cursers.c:18: 错误: ‘stdscr’ 未声明 (在此函数内第一次使用) cur...
我是这样编译的然后报错
cc cursers.c -lcurses -ltermlib
错误如下:
cursers.c:2:21: 错误: curses.h:No such file or directory
cursers.c: 在函数 ‘main’ 中:
cursers.c:18: 错误: ‘stdscr’ 未声明 (在此函数内第一次使用)
cursers.c:18: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
cursers.c:18: 错误: 所在的函数内只报告一次。)
cursers.c:21: 错误: ‘A_REVERSE’ 未声明 (在此函数内第一次使用)
cursers.c:37: 错误: ‘KEY_UP’ 未声明 (在此函数内第一次使用)
cursers.c:40: 错误: ‘KEY_DOWN’ 未声明 (在此函数内第一次使用)
cursers.c:43: 错误: ‘KEY_RIGHT’ 未声明 (在此函数内第一次使用)
cursers.c:46: 错误: ‘KEY_LEFT’ 未声明 (在此函数内第一次使用)
cursers.c:66: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
cursers.c: 在函数 ‘initial’ 中:
cursers.c:89: 错误: ‘stdscr’ 未声明 (在此函数内第一次使用)
cursers.c:89: 错误: ‘FALSE’ 未声明 (在此函数内第一次使用)
cursers.c:90: 错误: ‘TRUE’ 未声明 (在此函数内第一次使用)
这个错误应该是找不的函数库 curses.h,
我是在ubuntu 7.04版本编译的,清大家看看如何解决,谢谢!
cc cursers.c -lcurses -ltermlib
错误如下:
cursers.c:2:21: 错误: curses.h:No such file or directory
cursers.c: 在函数 ‘main’ 中:
cursers.c:18: 错误: ‘stdscr’ 未声明 (在此函数内第一次使用)
cursers.c:18: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
cursers.c:18: 错误: 所在的函数内只报告一次。)
cursers.c:21: 错误: ‘A_REVERSE’ 未声明 (在此函数内第一次使用)
cursers.c:37: 错误: ‘KEY_UP’ 未声明 (在此函数内第一次使用)
cursers.c:40: 错误: ‘KEY_DOWN’ 未声明 (在此函数内第一次使用)
cursers.c:43: 错误: ‘KEY_RIGHT’ 未声明 (在此函数内第一次使用)
cursers.c:46: 错误: ‘KEY_LEFT’ 未声明 (在此函数内第一次使用)
cursers.c:66: 警告: 隐式声明与内建函数 ‘exit’ 不兼容
cursers.c: 在函数 ‘initial’ 中:
cursers.c:89: 错误: ‘stdscr’ 未声明 (在此函数内第一次使用)
cursers.c:89: 错误: ‘FALSE’ 未声明 (在此函数内第一次使用)
cursers.c:90: 错误: ‘TRUE’ 未声明 (在此函数内第一次使用)
这个错误应该是找不的函数库 curses.h,
我是在ubuntu 7.04版本编译的,清大家看看如何解决,谢谢!
|
楼上说的极是
|
安装 Ncurses
1.准备编译 Ncurses :
./configure --prefix=/usr --with-shared --without-debug
2.编译软件包:
make
这个软件包没有附带测试程序。
3.安装软件包:
make install
4.赋予 ncurses 库文件可执行权限:
chmod -v 755 /usr/lib/*.5.4
5.修正一个不应该有可执行权限的库文件:
chmod -v 644 /usr/lib/libncurses++.a
6.把库文件移到更合理的 /lib 目录里:
mv -v /usr/lib/libncurses.so.5* /lib
7.由于库文件移动了,所以有的符号链接就指向了不存在的文件。需要重新创建这些符号链接:
ln -sfv ../../lib/libncurses.so.5 /usr/lib/libncurses.so
ln -sfv libncurses.so /usr/lib/libcurses.so
1.准备编译 Ncurses :
./configure --prefix=/usr --with-shared --without-debug
2.编译软件包:
make
这个软件包没有附带测试程序。
3.安装软件包:
make install
4.赋予 ncurses 库文件可执行权限:
chmod -v 755 /usr/lib/*.5.4
5.修正一个不应该有可执行权限的库文件:
chmod -v 644 /usr/lib/libncurses++.a
6.把库文件移到更合理的 /lib 目录里:
mv -v /usr/lib/libncurses.so.5* /lib
7.由于库文件移动了,所以有的符号链接就指向了不存在的文件。需要重新创建这些符号链接:
ln -sfv ../../lib/libncurses.so.5 /usr/lib/libncurses.so
ln -sfv libncurses.so /usr/lib/libcurses.so
|
: 有几个软件包无法下载,您可以运行 apt-get update 或者加上 --fix-missing 的选项再试试?
wubo@wubo-laptop:~$ apt-get update
E: 无法打开锁文件 /var/lib/apt/lists/lock - open (13 Permission denied)
E: 无法对状态列表目录加锁
wubo@wubo-laptop:~$ apt-get update
E: 无法打开锁文件 /var/lib/apt/lists/lock - open (13 Permission denied)
E: 无法对状态列表目录加锁
|
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libncurses5-dev libncursesw5-dev
这样下来就可以了。
sudo apt-get upgrade
sudo apt-get install libncurses5-dev libncursesw5-dev
这样下来就可以了。