当前位置: 技术问答>linux和unix
32位linux程序移植到64位linux下编译问题
来源: 互联网 发布时间:2016-06-13
本文导语: 原本在32位linux程序编译没有问题,现在因需要,要将原来的代码移植到64位的linux上编译,可是编译不过, 出现下面错误信息: x86_64上gcc编译c代码,在/usr/sys/下的sysmcros.h报一下错误: 1,parameter name omitted; 2,extcted expres...
原本在32位linux程序编译没有问题,现在因需要,要将原来的代码移植到64位的linux上编译,可是编译不过,
出现下面错误信息:
x86_64上gcc编译c代码,在/usr/sys/下的sysmcros.h报一下错误:
1,parameter name omitted;
2,extcted expression before '>>' token
...
不知道从32位C程序放到64位下还需要修改那些配置或者文件??
各位大虾帮忙,小弟项目比较急,在此拜谢各位了!
出现下面错误信息:
x86_64上gcc编译c代码,在/usr/sys/下的sysmcros.h报一下错误:
1,parameter name omitted;
2,extcted expression before '>>' token
...
不知道从32位C程序放到64位下还需要修改那些配置或者文件??
各位大虾帮忙,小弟项目比较急,在此拜谢各位了!
|
查查你的应用程序是否有有函数和sysmacros.h中定义的函数重名了。
|
这个问题听起来像是某个库函数的接口变了,应该跟64位没有太大关系
|
貌似参数数目出了问题,查看出错的函数参数
|
|
32位程序移植到64位平台前的准备工作
http://www.west263.com/info/html/wangluobiancheng/qita/20080410/59488_2.html
http://www.west263.com/info/html/wangluobiancheng/qita/20080410/59488_2.html
|
这要看具体的情况了
你这种貌似就是2楼大大说的 库函数的接口变化了,然后你还在用。
一般如果你在32位上对某些类型 进行长度假设的话 可能就运行Fail了。
比如long 32 64 ptr 32 64等等
你这种貌似就是2楼大大说的 库函数的接口变化了,然后你还在用。
一般如果你在32位上对某些类型 进行长度假设的话 可能就运行Fail了。
比如long 32 64 ptr 32 64等等
|
学习
帮顶
|
在IBM的aix上编译过,加了-m64参数