[求助]编译pam_mysql.so出错_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 2550 | 回复: 0   主题: [求助]编译pam_mysql.so出错        下一篇 
Gavin
注册用户
等级:少校
经验:878
发帖:130
精华:1
注册:2011-7-21
状态:离线
发送短消息息给Gavin 加好友    发送短消息息给Gavin 发消息
发表于: IP:您无权察看 2014-11-24 10:43:02 | [全部帖] [楼主帖] 楼主

用vsftp实现基于mysql的虚拟用户,在编译mysql验证模块的时候出现如下错误:

# make
mkdir -p ./dynamic
gcc -O2 -Dlinux -DLINUX_PAM -ansi -D_POSIX_SOURCE -Wall -Wwrite-strings -Wpointer-arith -Wcast-qual -Wcast-align -Wtraditional -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline -Wshadow -pedantic -fPIC -I/usr/local/mysql/include/mysql -DPAM_DYNAMIC??-c pam_mysql.c -o dynamic/pam_mysql.o


pam_mysql.c:35:25: 错误:mysql/mysql.h:没有那个文件或目录

pam_mysql.c:81: 错误:expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token

pam_mysql.c:141: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c:143: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c:151: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c: 在函数 ‘breakArgs’ 中:

pam_mysql.c:157: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在函数 ‘parseArgs’ 中:

pam_mysql.c:233: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在顶层:

pam_mysql.c:391: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c: 在函数 ‘db_close’ 中:

pam_mysql.c:420: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c:421: 错误:‘mysql_auth’ 未声明 (在此函数内第一次使用)

pam_mysql.c:421: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其

pam_mysql.c:421: 错误:所在的函数内只报告一次。)

pam_mysql.c:424: 警告:隐式声明函数 ‘mysql_close’

pam_mysql.c:424: 警告:对 ‘mysql_close’ 的嵌套的外部声明

pam_mysql.c: 在顶层:

pam_mysql.c:428: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c: 在函数 ‘converse’ 中:

pam_mysql.c:613: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c:617: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c: 在函数 ‘saltify’ 中:

pam_mysql.c:636: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在顶层:

pam_mysql.c:673: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c: 在函数 ‘askForPassword’ 中:

pam_mysql.c:800: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在顶层:

pam_mysql.c:839: 错误:expected ‘)’ before ‘*’ token

pam_mysql.c: 在函数 ‘pam_sm_authenticate’ 中:

pam_mysql.c:982: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c:989: 错误:‘MYSQL’ 未声明 (在此函数内第一次使用)

pam_mysql.c:989: 错误:expected ‘;’ before ‘auth_sql_server’

pam_mysql.c:1009: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1014: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1019: 警告:隐式声明函数 ‘db_connect’

pam_mysql.c:1019: 警告:对 ‘db_connect’ 的嵌套的外部声明

pam_mysql.c:1019: 错误:‘auth_sql_server’ 未声明 (在此函数内第一次使用)

pam_mysql.c:1027: 警告:隐式声明函数 ‘db_checkpasswd’

pam_mysql.c:1027: 警告:对 ‘db_checkpasswd’ 的嵌套的外部声明

pam_mysql.c: 在函数 ‘pam_sm_acct_mgmt’ 中:

pam_mysql.c:1047: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在函数 ‘pam_sm_setcred’ 中:

pam_mysql.c:1057: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在函数 ‘pam_sm_chauthtok’ 中:

pam_mysql.c:1069: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c:1077: 错误:‘MYSQL’ 未声明 (在此函数内第一次使用)

pam_mysql.c:1077: 错误:expected ‘;’ before ‘auth_sql_server’

pam_mysql.c:1100: 错误:‘auth_sql_server’ 未声明 (在此函数内第一次使用)

pam_mysql.c:1113: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1120: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1147: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1158: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1173: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1180: 警告:提领类型双关的指针将破坏强重叠规则

pam_mysql.c:1187: 警告:隐式声明函数 ‘updatePasswd’

pam_mysql.c:1187: 警告:对 ‘updatePasswd’ 的嵌套的外部声明

pam_mysql.c: 在函数 ‘pam_sm_open_session’ 中:

pam_mysql.c:1201: 警告:传统 C 不接受 ISO C 风格的函数定义

pam_mysql.c: 在函数 ‘pam_sm_close_session’ 中:

pam_mysql.c:1211: 警告:传统 C 不接受 ISO C 风格的函数定义

make: ***  错误 1

以下是修改后的Makefile文件的部分内容(其中红色部分是一般需要修改的c头文件的路径和库文件的路径):

# Convenient defaults for compiling independently of the full source
# tree.
ifndef FULL_LINUX_PAM_SOURCE_TREE
export DYNAMIC=-DPAM_DYNAMIC
export CC=gcc
export CFLAGS=-O2 -Dlinux -DLINUX_PAM \
? ?? ? -ansi -D_POSIX_SOURCE -Wall -Wwrite-strings \
? ?? ? -Wpointer-arith -Wcast-qual -Wcast-align -Wtraditional \
? ?? ? -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Winline \
? ?? ? -Wshadow -pedantic -fPIC -I/usr/local/mysql/include/mysql
export MKDIR=mkdir -p
export LD_D=gcc -shared -Xlinker -x -L/usr/local/mysql/lib/mysql -lz
endif


我是源码安装mysql的.上面C头文件路径和库文件路径,确认不会错.但编译的时候还是出错,郁闷了,请各位帮助解答.

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论