aix下,有用过flock函数的吗,g++编译总是找不到这个函数

柳承枫 2013-12-12 05:10:48
aix下,有用过flock函数的吗,g++编译总是找不到这个函数,还是需要安装什么应用包,还是需要link什么库吗,编译提示如下错误,总是找flock.h里面一个struct flock的结构。
./public/fuserftp.cpp:193: error: no matching function for call to 'flock::flock(int&, int)'
/usr/include/sys/flock.h:43: note: candidates are: flock::flock()
/usr/include/sys/flock.h:43: note: flock::flock(const flock&)
./public/fuserftp.cpp:476: error: no matching function for call to 'flock::flock(int&, int)'
/usr/include/sys/flock.h:43: note: candidates are: flock::flock()
/usr/include/sys/flock.h:43: note: flock::flock(const flock&)
make: 1254-004 The error code from the last command is 1.
...全文
310 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
柳承枫 2013-12-16
  • 打赏
  • 举报
回复
引用 11 楼 sduxiaoxiang 的回复:
[quote=引用 10 楼 jackyleu 的回复:] [quote=引用 9 楼 sduxiaoxiang 的回复:] aix 还是用自带的xlc吧
项目已经快结束了,为了移植linux方便,才用了g++[/quote] 不需要移植啊,拿到linux直接用g++编译就是 难道仅仅为了省去重写makefile[/quote] 哎,项目已经快结束了,从linux移植到aix的,xlC编译时候,一堆的错误,换成g++基本不用修改
柳承枫 2013-12-13
  • 打赏
  • 举报
回复
引用 9 楼 sduxiaoxiang 的回复:
aix 还是用自带的xlc吧
项目已经快结束了,为了移植linux方便,才用了g++
sduxiaoxiang 2013-12-13
  • 打赏
  • 举报
回复
aix 还是用自带的xlc吧
柳承枫 2013-12-13
  • 打赏
  • 举报
回复
引用 7 楼 turingo 的回复:
有先用man查找吗,你的系统可能不一样呢。 [quote=引用 5 楼 jackyleu 的回复:] [quote=引用 2 楼 turingo 的回复:] 用
man 2 flock
就可以找到了,我这边是在#include <sys/file.h>中。 [quote=引用 楼主 jackyleu 的回复:] aix下,有用过flock函数的吗,g++编译总是找不到这个函数,还是需要安装什么应用包,还是需要link什么库吗,编译提示如下错误,总是找flock.h里面一个struct flock的结构。 ./public/fuserftp.cpp:193: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) ./public/fuserftp.cpp:476: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) make: 1254-004 The error code from the last command is 1.
[/quote] 我也是这样做的,编译不过的[/quote][/quote] 谢谢您的回复,我用man查过了,可以找到这个函数,也提示我在sys/file.h下了,但是我编译就是不过,提示上面的错误。
图灵狗 2013-12-13
  • 打赏
  • 举报
回复
有先用man查找吗,你的系统可能不一样呢。
引用 5 楼 jackyleu 的回复:
[quote=引用 2 楼 turingo 的回复:] 用
man 2 flock
就可以找到了,我这边是在#include <sys/file.h>中。 [quote=引用 楼主 jackyleu 的回复:] aix下,有用过flock函数的吗,g++编译总是找不到这个函数,还是需要安装什么应用包,还是需要link什么库吗,编译提示如下错误,总是找flock.h里面一个struct flock的结构。 ./public/fuserftp.cpp:193: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) ./public/fuserftp.cpp:476: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) make: 1254-004 The error code from the last command is 1.
[/quote] 我也是这样做的,编译不过的[/quote]
柳承枫 2013-12-13
  • 打赏
  • 举报
回复
引用 3 楼 max_min_ 的回复:

  #include <sys/file.h>

 int flock(int fd, int operation);

//man 
这个找不到
柳承枫 2013-12-13
  • 打赏
  • 举报
回复
引用 2 楼 turingo 的回复:
man 2 flock
就可以找到了,我这边是在#include <sys/file.h>中。 [quote=引用 楼主 jackyleu 的回复:] aix下,有用过flock函数的吗,g++编译总是找不到这个函数,还是需要安装什么应用包,还是需要link什么库吗,编译提示如下错误,总是找flock.h里面一个struct flock的结构。 ./public/fuserftp.cpp:193: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) ./public/fuserftp.cpp:476: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) make: 1254-004 The error code from the last command is 1.
[/quote] 我也是这样做的,编译不过的
柳承枫 2013-12-13
  • 打赏
  • 举报
回复
引用 1 楼 hanzhaoshuai 的回复:
debian下面头文件在:

#include <sys/file.h>
我包含这个头文件了,提示是上面的错误
sduxiaoxiang 2013-12-13
  • 打赏
  • 举报
回复
引用 10 楼 jackyleu 的回复:
[quote=引用 9 楼 sduxiaoxiang 的回复:] aix 还是用自带的xlc吧
项目已经快结束了,为了移植linux方便,才用了g++[/quote] 不需要移植啊,拿到linux直接用g++编译就是 难道仅仅为了省去重写makefile
max_min_ 2013-12-12
  • 打赏
  • 举报
回复

  #include <sys/file.h>

 int flock(int fd, int operation);

//man 
图灵狗 2013-12-12
  • 打赏
  • 举报
回复
man 2 flock
就可以找到了,我这边是在#include <sys/file.h>中。
引用 楼主 jackyleu 的回复:
aix下,有用过flock函数的吗,g++编译总是找不到这个函数,还是需要安装什么应用包,还是需要link什么库吗,编译提示如下错误,总是找flock.h里面一个struct flock的结构。 ./public/fuserftp.cpp:193: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) ./public/fuserftp.cpp:476: error: no matching function for call to 'flock::flock(int&, int)' /usr/include/sys/flock.h:43: note: candidates are: flock::flock() /usr/include/sys/flock.h:43: note: flock::flock(const flock&) make: 1254-004 The error code from the last command is 1.
兆帅 2013-12-12
  • 打赏
  • 举报
回复
debian下面头文件在:

#include <sys/file.h>

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

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