欢迎 x1982129 加入本站!
 免费注册  用户登陆  汇款方式  汇款确认  产品报价  联系我们  帮助中心
加入收藏
设为首页
会员体系
申请VIP
网站首页 光盘超市 软件下载 技术文章 专题 用户中心 VIP会员 技术论坛 网站留言 娱乐中心 卓越资源
今天是:2008年11月20日 星期四  您现在位于: 首页 → 技术文章 → SCO6链接SCO5的...
   SCO6链接SCO5的动态链接库注意事项
作者:myq12  出处:bbs.chinaunix.net  更新时间: 2007年04月26日 

最近在一家银行作核心系统,采用的是SCO openServer6.0.0,原来的程序是在SCO openserver5.0.6小编译的,而且是大量的动态链接库.so,遇到的问题真是恶心之极,网上国内外查了个遍,遇到的问题还是不少,但是基本上都没有说到点子上,下面是我遇到的问题及解决方法,希望更多的人参与:
SCO OSR5下的动态库libfun.so,exe.c可执行程序,libfun.so是在SCO5下编译的,直接拷贝到
SCO OSR6下,重新使exe.c链接libfun.so,出现的情况如下:
SCO openserver6.0 编译链接
mk.sh:
cc -c -Kudk q.c -I/usr/tuxedo/include -I/usr/include #生成.o
cc -o a.out -Kosr q.o \
-dy -L./ -Kosr -lfun \
-L/usr/tuxedo/lib -lwsc -lbuft -lwsc  -lnws -lnwi -lnws  -lfml \
-lfml32 -lgp /usr/lib/libcrypt.a  -belf -lnsl -lsocket -L/usr/lib

# sh mk.sh
1.UX:cc: WARNING: -L /usr/lib will likely find the wrong libraries for your 
compilation mode

2.UX:ld: ERROR: libfun.so: cannot link OpenServer object into Intel iABI (UDK 

ABI)
target

       To build using existing OpenServer objects, compile and link using 
-Kosr  option
       Or to convert to UDK ABI, recompile OpenServer sources with (default) 
-Kudk option

这里涉及到SCO6用的编译器,他缺省用的是/usr/ccs/bin/cc,即UNware的编译器,
这样链接不了SCO5的动态库(格式不支持,UDK):ilbfun.so,因此,需要用SCO6支持SCO5动态库的
编译器:/osr5/usr/ccs/bin/cc ,并且加两个参数:-Kosr -f osr,终于编译过了
/osr5/usr/ccs/bin/cc -DSVR4 -c q.c \
-I/usr/tuxedo/include -I/usr/include -I/osr5/usr/include

/osr5/usr/ccs/bin/cc -o a.out q.o \
-belf -f osr -L./ -lfun -f osr \
/usr/lib/libcrypt.a -belf -lnsl \
-L/osr5/usr/lib \
-L/usr/lib -lgen -lm -lc
#-L/usr/tuxedo/lib -ltux -lbuft -ltux2 -lwsc -lnws -lnwi -lfml -lfml32 -lgp -belf

这样就可以了,但是增加了TUXEDO的函数,例如userlog,把下面的链接函数库放开,
就发生了很多找不到的函数,:例如
__stat32 undefineed symbol in libgp.a (libgp.so.60)
但是,根据本人的经验,涉及的问题就比较多了,之前这个在SCO5下都是通过的,
希望有高人能够解决!!!!!
总结:如果是SCO5.0.6的用户,程序移植到SCO6上,个人建议不要重新编译(因为如果用到TUXEDO,
informix,他们的库可能通过不了,他们都是在SCO5下作的,当然要是有源代码的话),
重新编译恐怕会有不可预知的问题,总之SCO6不象想象的那么牛B! 
 (本文已被浏览 2542 次)
 发布人:sdccf
 → 推荐给我的好友
上篇文章:通过PXE远程安装LINUX全程解析
下篇文章:Linux中增加Swap分区文件的步骤方法
 相关文章:
如何把一个软盘镜像HBA文件转光盘ISO格式HBA文件 SCO OpenServer 6使用中文界面的KDE3.5.2
部分双核处理器平台无法正确安装OSR6的解决办法 SCO基础问题解答和故障处理
SCO UNIX基础讲座 IBM X346安装OpenServer注意事项
SCO OpenServer6.0在HP DL380G4服务器上的安装 在OpenServer 6上安装使用KDE 3.5.2
SCO 5升级至SCO 6技术分享-Migrating Mail SCO 6运行Informix-SE 7.23与4GL 7.20的设定
SCO5升级至SCO6技术分享-执行XENIX应用程序的设定 在部分双核处理器下无法正确安装OSR6的解决办法
SCO操作系统安装Serial ATA (SATA)硬盘的方式 Acer Altos G320安装SCO OpenServer 6的注意事项
测试报告:SCO OpenServer还有戏吗? 安装SCO OpenServer 6 Maintenance Pack 2失败?
SCO操作系统信息侦测工具介绍-sysinfo SCO OpenServer 6安装说明(英文版)
SCO OpenServer 6 (OSR6)安装说明 SCO OpenServer 6如何提供大于2GB档案的支持

相关搜索
查看百度中关于SCO6链接SCO5的动态链接库注意事项的更多内容
查看google中关于SCO6链接SCO5的动态链接库注意事项的更多内容
   文章分类
操作系统 |
SCO_UNIX  Sun_Solaris  IBM_AIX  HP_UX  Linux  BSD  Tru64_UNIX 
通用UNIX知识  Windows  Minix 
程序设计 |
Shell编程  C/C++  汇编  PHP  JAVA  Perl  Python 
ASP/HTML  XML  中间件 
数据库 |
Oracle  Informix  Sybase  Fox  DB2  SQL  MySQL 
PostgreSQL 
网络应用 |
网络应用 
计算机硬件 |
计算机主机  打印机  路由器  交换机  终端  磁带机  MO 
刻录机  终端服务器  调制解调器 
   文章评论
  → 评论内容 (点击查看)   共0条评论,每页显示5条评论   浏览所有评论
(没有相关评论)
  → 发表我的评论
您的姓名: 您的Email:
评论内容:
250字内
发表评论:      发表评论须知 →
  • 尊重网上道德,遵守《全国人大常委会关于维护互联网安全的决定》及中华人民共和国其他各项有关法律法;
  • 本站有权保留或删除您发表的任何评论内容;
  • 关于我们 ┋  网站留言 ┋  网站地图 ┋  友情链接 ┋  与我在线 ┋  汇款确认 ┋  管理 ┋  TOP
    Linux.Unix爱好者家园  http://www.unix-cd.com/
    联系我们:sdccf@163.com
    腾讯QQ: 7644599
    备案序号:鲁ICP备05000455号
    Copyright (c) 2001-2008 Unix-cd.com. All Rights Reserved.