|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rloginrcp、finger、mail、nslookup
偶然我必要制造LINUX与WINDOWS下都能够运转的程序。在一样平常情形下,我会选择在WINDOWS平台下完成初始的开辟。由于VC供应的图形化的编纂与调试界面切实其实较GCC要高产很多。在完成了测试以后,就入手下手把它向LINUX移植,移植的历程会有一些必要注重的中央。
上面就是我的一些心得。
文件名
因为ext2文件体系对文件名是巨细写敏感的,当你在这类文件体系长进行编译的时分,源文件中呈现的#include语句必需当心了。由于在VC情况下,由IDE主动天生的#include语句,个中的文件名全体是小写的。以是,你必要在一入手下手就注重这个成绩,严厉的利用巨细写敏感的文件名格局,制止在LINUX下编译时呈现找不到头文件的毛病。
数据范例
万万不要利用VC独占的数据范例,象__int16,__int32和__int64等等,你没法包管别的的编译器可否撑持它们。出格是__int64,它的确简化了编程事情,可是当你的逻辑里充斥了如许的数据范例的时分,修改就变得非常坚苦了。另有一个成绩就是,我们常常在VC中利用WORD,DWORD,INT,UINT如许的扩大数据范例,不间接利用编译器的数据范例有助于进步在分歧平台之间的可移植性。可是LINUX下没有界说如许的范例啊?实在只必要将windows.h和basetypes.h中对这些数据举行界说的语句复制到一个头文件中,再在linux下包含出去就好了。
关头字
关头字是对照优点理的器材,但凡VC中带两个下划线的关头字,例如__asm都是VC独占的。只管不利用它们,假如其实没法制止,就用#ifdef和#endif为LINUX和WINDOWS编写两个版本。
MAKEFILE的编写
你能够先用VC导出一个makefile,然后对其举行修正,但我偏向于从中拷贝出一段来天生GCC的makefile,比起手工编写要快很多。
程序计划布局
这相对是移植过程当中成绩最年夜的一个部分。使用程序不免要用到操纵体系的服务,假如完整利用尺度的C/C++编写,这将不是一个成绩,可是当我们利用到多进/线程,管道,大概对WINDOWS图形界面的程序举行移植的时分,这个成绩就变得凸起了。我们应该从计划上就为程序的移植打好基本。
办理这个成绩起首必需弄分明使用程序的逻辑模块。关于这个模块必需利用尺度的C/C++举行编写。同时将使用程序利用的线程数最小化,线程越多越难移植。将输出输入模块自力出来。最初分别出把持模块,这个模块与用户举行交互
</p>
系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo、pswho |
|