Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

ÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶

 ÕâÆªÎÄÕ½éÉÜÔÚLINUXϽøÐÐCÓïÑÔ±à³ÌËùÐèÒªµÄ»ù´¡ÖªÊ¶.ÔÚÕâÆªÎÄÕµ±ÖÐ,ÎÒÃǽ«»áѧµ½ÒÔÏÂÄÚÈÝ:
Ô´³ÌÐò±àÒë
MakefileµÄ±àд
³ÌÐò¿âµÄÁ´½Ó
³ÌÐòµÄµ÷ÊÔ
Í·ÎļþºÍϵͳÇóÖú
--------------------------------------------------------------------------------
1.Ô´³ÌÐòµÄ±àÒë
ÔÚLinuxÏÂÃæ,Èç¹ûÒª±àÒëÒ»¸öCÓïÑÔÔ´³ÌÐò,ÎÒÃÇҪʹÓÃGNUµÄgcc±àÒëÆ÷. ÏÂÃæÎÒÃÇÒÔÒ»¸öʵÀýÀ´ËµÃ÷ÈçºÎʹÓÃgcc±àÒëÆ÷.
¼ÙÉèÎÒÃÇÓÐÏÂÃæÒ»¸ö·Ç³£¼òµ¥µÄÔ´³ÌÐò(hello.c):
int main(int argc,char **argv)
{
printf("Hello Linux\n");
}
Òª±àÒëÕâ¸ö³ÌÐò,ÎÒÃÇÖ»ÒªÔÚÃüÁîÐÐÏÂÖ´ÐÐ:
gcc -o hello hello.c
gcc ±àÒëÆ÷¾Í»áΪÎÒÃÇÉú³ÉÒ»¸öhelloµÄ¿ÉÖ´ÐÐÎļþ.Ö´ÐÐ./hello¾Í¿ÉÒÔ¿´µ½³ÌÐòµÄÊä³ö½á¹ûÁË.ÃüÁîÐÐÖÐ
gcc±íʾÎÒÃÇÊÇÓÃgccÀ´±àÒëÎÒÃǵÄÔ´³ÌÐò,-o Ñ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷¸øÎÒÃÇÊä³öµÄ¿ÉÖ´ÐÐÎļþÃûΪhello
¶øhello.cÊÇÎÒÃǵÄÔ´³ÌÐòÎļþ. gcc±àÒëÆ÷ÓÐÐí¶àÑ¡Ïî,Ò»°ãÀ´ËµÎÒÃÇÖ»ÒªÖªµÀÆäÖеö¾Í¹»ÁË. -oÑ¡ÏîÎÒÃÇÒѾ­ÖªµÀÁË,±íʾÎÒÃÇÒªÇóÊä³öµÄ¿ÉÖ´ÐÐÎļþÃû.
-cÑ¡Ïî±íʾÎÒÃÇÖ»ÒªÇó±àÒëÆ÷Êä³öÄ¿±ê´úÂë,¶ø²»±ØÒªÊä³ö¿ÉÖ´ÐÐÎļþ. -gÑ¡Ïî±íʾÎÒÃÇÒªÇó±àÒëÆ÷ÔÚ±àÒëµÄʱºòÌṩÎÒÃÇÒÔºó¶Ô³ÌÐò½øÐе÷ÊÔµÄÐÅÏ¢. ÖªµÀÁËÕâÈý¸öÑ¡Ïî,ÎÒÃǾͿÉÒÔ±àÒëÎÒÃÇ×Ô¼ºËùдµÄ¼òµ¥µÄÔ´³ÌÐòÁË,Èç¹ûÄãÏëÒªÖªµÀ¸ü¶àµÄÑ¡Ïî,¿ÉÒԲ鿴gccµÄ°ïÖúÎĵµ,ÄÇÀïÓÐ×ÅÐí¶à¶ÔÆäËüÑ¡ÏîµÄÏêϸ˵Ã÷.
2.MakefileµÄ±àд
¼ÙÉèÎÒÃÇÓÐÏÂÃæÕâÑùµÄÒ»¸ö³ÌÐò,Ô´´úÂëÈçÏÂ:
/* main.c */
#include "mytool1.h"
#include "mytool2.h"
int main(int argc,char **argv)
{
mytool1_print("hello");
mytool2_print("hello");
}
/* mytool1.h */
#ifndef _MYTOOL_1_H
#define _MYTOOL_1_H
void mytool1_print(char *print_str);
#endif
/* mytool1.c */
#include "mytool1.h"
void mytool1_print(char *print_str)
{
printf("This is mytool1 print %s\n",print_str);
}
/* mytool2.h */
#ifndef _MYTOOL_2_H
#define _MYTOOL_2_H
void mytool2_print(char *print_str);
#endif
/* mytool2.c */
#include "mytool2.h"
void mytool2_print(char *print_str)
{
printf("This is mytool2 print %s\n",print_str);
}
µ±È»ÓÉÓÚÕâ¸ö³ÌÐòÊǺ̵ܶÄÎÒÃÇ¿ÉÒÔÕâÑùÀ´±àÒë
gcc -c main.c
gcc -c mytool1.c
gcc -c mytool2.c
gcc -o main main.o my


Ïà¹ØÎĵµ£º

Linux²Ù×÷ϵͳµÄConfigure²ÎÊý½âÊÍ˵Ã÷

Linux»·¾³ÏµÄÈí¼þ°²×°£¬²¢²»ÊÇÒ»¼þÈÝÒ×µÄÊÂÇ飻Èç¹ûͨ¹ýÔ´´úÂë±àÒëºóÔÚ°²×°£¬µ±È»ÊÂÇé¾Í¸üΪ¸´ÔÓһЩ£»ÏÖÔÚ°²×°¸÷ÖÖÈí¼þµÄ½Ì³Ì¶¼·Ç³£ÆÕ±é£»µ«Íò±ä²»ÀëÆäÖУ¬¶Ô»ù´¡ÖªÊ¶µÄÔúÊµÕÆÎÕ£¬°²×°¸÷ÖÖÈí¼þµÄÎÊÌâ¾ÍÓ­Èжø½âÁË¡£Configure½Å±¾ÅäÖù¤¾ß¾ÍÊÇ»ù´¡Ö®Ò»£¬ËüÊÇautoconfµÄ¹¤¾ßµÄ»ù±¾Ó¦Óá£
ÓëһЩ¼¼ÇÉÏà±È£¬ConfigureÏԵûù ......

LinuxÖÐtty pty pts ¸ÅÄîÇø±ð

 »ù±¾¸ÅÄ
1> tty(ÖÕ¶ËÉ豸µÄͳ³Æ):
ttyÒ»´ÊÔ´ÓÚTeletypes£¬»òÕßteletypewriters£¬Ô­À´Ö¸µÄÊǵ紫´ò×Ö»ú£¬ÊÇͨ¹ý´®ÐÐÏßÓôòÓ¡»ú¼üÅÌͨ¹ýÔĶÁºÍ·¢ËÍÐÅÏ¢µÄ¶«Î÷£¬ºóÀ´Õâ¶«Î÷±»¼üÅÌÓëÏÔʾÆ÷È¡´ú£¬ËùÒÔÏÖÔÚ½ÐÖն˱ȽϺÏÊÊ¡£
ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£
2> pt ......

Linux Æô¶¯²ÎÊý £¨×ª£©

 Ò»°ãµÄϵͳÊÇÏÈÆô¶¯/sbin/init£¬µ«ÊÇÒ²¿Éͨ¹ýÆô¶¯²ÎÊýÖ¸¶¨init=À´È·¶¨£¬
È磺ÎÒµÄϵͳ¾ÍÊÇÖÆ¶¨µÄinit=/linuxrc,ÒòΪÎļþϵͳÊDzÉÓÃbusyboxµÄ£¬¶ølinuxrc
Ò²ÊÇÒ»¸öÖ¸ÏòbusyboxµÄÎļþ£¬²»¹ý²»È·ÈÏËüÖ¸Ïò¾ßÌåÄĸöÖ¸Áî¡£²»¹ý¿ÉÄÜÊÇ/sbin/init¡£
init½ø³ÌµÄÖ÷ÒªÈÎÎñÊǰ´ÕÕinittabÎļþËùÌṩµÄÐÅÏ¢´´½¨½ø³Ì£¬ÓÉÓÚ½øÐÐÏµÍ ......

Linux, Unix, Windows Ö®¼äÇø±ð

LinuxºÍWindowsµÄÇø±ð
ºÍLinuxÒ»Ñù£¬WindowsϵÁÐÊÇÍêÈ«µÄ¶àÈÎÎñ²Ù×÷ϵͳ¡£ËüÃÇÖ§³ÖͬÑùµÄÓû§½Ó¿Ú¡¢ÍøÂçºÍ°²È«ÐÔ¡£µ«ÊÇ£¬LinuxºÍWindowsµÄÕæÕýÇø±ðÔÚÓÚ£¬LinuxÊÂʵÉÏÊÇUnixµÄÒ»ÖÖ°æ±¾£¬¶øÇÒÀ´×ÔUnixµÄ¹±Ï׷dz£¾Þ´ó¡£ÊÇʲôʹµÃUnixÈç´ËÖØÒª£¿²»½öÔÚÓÚ¶Ô¶àÓû§»úÆ÷À´Ëµ£¬UnixÊÇ×îÁ÷ÐеIJÙ×÷ϵͳ£¬¶øÇÒÔÚÓÚËüÊÇÃâ·ÑÈí¼þµÄ»ù´ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ