ubuntu在编译时提示 错误:stdio.h没有该文件或目录..怎是怎回事?我没动过stdio.h这些头文件怎没了呢?

xiangxuf 2010-02-23 07:22:11
提示的错误如下:
fxx@fxx-desktop:~/fxx$ gcc -o lseek lseek.c
lseek.c:1:19: 错误: unistd.h:没有该文件或目录
lseek.c:2:22: 错误: sys/types.h:没有该文件或目录
lseek.c:3:21: 错误: sys/stat.h:没有该文件或目录
lseek.c:4:18: 错误: fcntl.h:没有该文件或目录
lseek.c:5:18: 错误: stdio.h:没有该文件或目录
lseek.c: 在函数‘main’中:
lseek.c:12: 错误: ‘O_WRONLY’未声明 (在此函数内第一次使用)
lseek.c:12: 错误: (即使在一个函数内多次出现,每个未声明的标识符在其
lseek.c:12: 错误: 所在的函数内也只报告一次。)
lseek.c:12: 错误: ‘O_CREAT’未声明 (在此函数内第一次使用)
lseek.c:16: 错误: ‘SEEK_CUR’未声明 (在此函数内第一次使用)


这是源程序:
#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<fcntl.h>
#include<stdio.h>

int main(void)
{
int fd, i, rev;
char buf[] = "hello world";

fd = open("temp.log",O_WRONLY|O_CREAT);
for(i = 0; i < 10; i++)
{
write(fd, buf, sizeof(buf));
lseek(fd, -5, SEEK_CUR);
}
close(fd);
return 0;
}
...全文
1629 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
vcshcn 2011-07-03
  • 打赏
  • 举报
回复
现在的老师越来越不行了
KimenWu 2010-02-24
  • 打赏
  • 举报
回复
unbuntu需要自己安装编译工具链才行,比较麻烦,所以不喜欢用它
谭海燕 2010-02-23
  • 打赏
  • 举报
回复
引用 3 楼 steptodream 的回复:
看来要做开发的 要学习的 就不要用Ubuntu了



同意。

当年我就装了一个ubuntu.被导师被批了一顿个:Ubuntu除了很炫以外,还有什么值得你去追捧的。

steptodream 2010-02-23
  • 打赏
  • 举报
回复
看来要做开发的 要学习的 就不要用Ubuntu了
deep_pro 2010-02-23
  • 打赏
  • 举报
回复
默认的ubuntu连hello world都编不过去
sudo apt-get install build-essential
steptodream 2010-02-23
  • 打赏
  • 举报
回复
对Ubuntu不属性 但是一看就是没找到头文件 库
你用find / -name unistd.h
看看你的系统你有没有这个文件

23,121

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧