aix的c程序迁移到linux,C++程序开发从Linux迁移到AIX5.3

3,线程安全性

在AIX上的程序如果使用了多线程,程序一定要在编译时加上-D_THREAD_SAFE或者-D_THREAD_SAFE_ERRNO,查看/usr/include/errno.h就不难发现其原因了。否则程序会报出很多奇奇怪怪的错误,搞得你头大。

另外,如果你使用了第三方库,你一定要检查一下,看它是否有分单线程或者多线程的版本,比如sybase数据库的ct-lib库,在AIX上就有分libct.so和libct_r.so,当然还你要搞清楚你安装的操作系统是多少位的,32bit或者64bit,同样有libct64.so和libct64_r.so。

4,Makefile文件

在AIX上自己可以安装一个GUN的make,这样你就不用太大改动你在Linux下的Makefile文件了,但还是有小许地方是要改动的,比如你有使用到.so文件,你不能用-l某某库的方式,你必须以全路径方式,与.o文件一起link起来,比如你要用到libsybdb.so,如果你用-lsybdb,-L$(SYBASE)/lib,编译时还是会报找不到该SO文件,你可以用$(SYBASE)/lib/libsybdb.so直接把全路径编译,正常。

以上一些,是我在实际中发现的一些问题,因为对AIX也不太熟悉,并不确定是否是因为我本身的配置或者其它别的原因导致的,如果哪位高手发现有更好的办法,望指点。另如还有其它的一些经验,也希望补充。谢谢!

其次,介绍几个比较好的工具,以网络邻居方式访问AIX上文件:samba for aix,同样也有linxu版本。另外,查看是否内存泄露:svmon -P PID -i N就每隔N秒打印一下进程PID的资源使用情况。0b1331709591d260c1c78e86d0c51c18.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值