免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6008 | 回复: 1

linux C下mysql编译问题,请DX帮忙看看 [复制链接]

论坛徽章:
0
发表于 2010-09-14 17:44 |显示全部楼层
linux下已安装如下包:

MySQL-server-community-5.1.50-1.sles9
MySQL-client-community-5.1.50-1.sles9
MySQL-devel-community-5.1.50-1.sles10
MySQL-embedded-community-5.1.50-1.sles9
MySQL-shared-community-5.1.50-1.sles9

数据库已建立,执行select也没问题,然后写了个简单测试程序,

>mysql_config --libs
-rdynamic -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lmygcc

>mysql_config --cflags
-I/usr/include/mysql  -g -m32 -fmessage-length=0 -D_FORTIFY_SOURCE=2   -DUNIV_LINUX -DUNIV_LINUX



cc -o test test.c -rdynamic -L/usr/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm -lmygcc   -I/usr/include/mysql  -g -m32 -fmessage-length=0 -D_FORTIFY_SOURCE=2   -DUNIV_LINUX -DUNIV_LINUX


错误如下:

test.c: In function `main':
test.c:5: warning: return type of `main' is not `int'
/usr/lib/libc_nonshared.a(elf-init.oS)(.gnu.linkonce.t.__i686.get_pc_thunk.bx+0x0): In function `__libc_csu_fini':
/usr/src/packages/BUILD/glibc-2.3/csu/elf-init.c:74: multiple definition of `__i686.get_pc_thunk.bx'
/usr/lib/mysql/libmysqlclient.a(client.o)(.text.__i686.get_pc_thunk.bx+0x0):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/client.c:1244: first defined here
/usr/lib/mysql/libmysqlclient.a(client.o)(.text+0xffb): In function `set_mysql_error':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/client.c:306: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(client.o)(.text+0x1ea1): In function `mysql_set_character_set':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/client.c:3262: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(client.o)(.text+0x2b2c): In function `mysql_read_default_options':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/client.c:1201: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(client.o)(.text+0x38f7): In function `mysql_real_connect':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/client.c:2104: undefined reference to `__memcpy_chk'
/usr/lib/mysql/libmysqlclient.a(vio.o)(.text+0x2b4): In function `vio_new':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/vio.c:154: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(viosslfactories.o)(.text+0x2ce): In function `new_VioSSLFd':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/viosslfactories.c:122: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(viosslfactories.o)(.text+0x347):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/viosslfactories.c:137: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x1fdc): In function `fetch_float_with_conversion':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3865: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x2083):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3857: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x212a):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3876: undefined reference to `__memset_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x24f0): In function `fetch_long_with_conversion':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3739: undefined reference to `__memset_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x5645): In function `mysql_stmt_send_long_data':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3373: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x5cc: In function `mysql_stmt_bind_param':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:3286: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(libmysql.o)(.text+0x610c): In function `mysql_stmt_bind_result':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/libmysql.c:4514: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(password.o)(.text+0x723): In function `make_password_from_salt_323':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/password.c:297: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(password.o)(.text+0x78a): In function `my_make_scrambled_password_323':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/password.c:151: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(my_init.o)(.text+0x1bd): In function `my_end':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/my_init.c:181: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(mf_pack.o)(.text+0x73): In function `intern_filename':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_pack.c:522: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(mf_pack.o)(.text+0x3d5): In function `cleanup_dirname':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_pack.c:193: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(mf_pack.o)(.text+0x47:/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_pack.c:182: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(mf_pack.o)(.text+0x687): In function `unpack_dirname':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_pack.c:365: undefined reference to `__memmove_chk'
/usr/lib/mysql/libmysqlclient.a(typelib.o)(.text+0x556): In function `find_type_or_exit':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/typelib.c:34: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(typelib.o)(.text+0x57e):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/typelib.c:37: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(typelib.o)(.text+0x5ad):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/typelib.c:39: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(typelib.o)(.text+0x60:/usr/src/packages/BUILD/mysql-5.1.50/libmysql/typelib.c:36: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(mf_format.o)(.text+0x32d): In function `fn_format':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_format.c:107: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(mf_format.o)(.text+0x3dc):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_format.c:92: undefined reference to `__memmove_chk'
/usr/lib/mysql/libmysqlclient.a(my_symlink.o)(.text+0x39): In function `my_realpath':
/usr/include/bits/stdlib.h:35: undefined reference to `__realpath_chk'
/usr/lib/mysql/libmysqlclient.a(mf_loadpath.o)(.text+0x197): In function `my_load_path':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/mf_loadpath.c:45: undefined reference to `__strncat_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x76c): In function `get_argument':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:614: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0xe4d): In function `search_default_file_with_ext':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:720: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x1082):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:691: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x10dc):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:675: undefined reference to `__stpcpy_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x1117):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:805: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x13d9): In function `my_search_option_files':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:250: undefined reference to `__fprintf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x18e3): In function `my_load_defaults':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:523: undefined reference to `__printf_chk'
/usr/lib/mysql/libmysqlclient.a(default.o)(.text+0x1915):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/default.c:526: undefined reference to `__printf_chk'
/usr/lib/mysql/libmysqlclient.a(ctype.o)(.text+0x55c): In function `cs_value':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/ctype.c:285: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(xml.o)(.text+0x3e: In function `my_xml_leave':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/xml.c:241: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(xml.o)(.text+0x421):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/xml.c:245: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(xml.o)(.text+0xc8c): In function `my_xml_parse':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/xml.c:347: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(my_time.o)(.text+0x78f): In function `my_datetime_to_str':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/my_time.c:1039: undefined reference to `__sprintf_chk'
/usr/lib/mysql/libmysqlclient.a(my_time.o)(.text+0x7ea):/usr/src/packages/BUILD/mysql-5.1.50/libmysql/my_time.c:1033: more undefined references to `__sprintf_chk' follow
/usr/lib/mysql/libmysqlclient.a(my_time.o)(.text+0x1c05): In function `str_to_time':
/usr/src/packages/BUILD/mysql-5.1.50/libmysql/my_time.c:578: undefined reference to `__memset_chk'
collect2: ld returned 1 exit status

不知道少了哪个库没安装?

论坛徽章:
0
发表于 2010-09-14 18:54 |显示全部楼层
MySQL-devel-community-5.1.50-1.sles10 这个包下错了,
我应该下for suse linux 9的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP