LinuxÖ®Makefile (Èý)
make µÄÔËÐÐ
——————
Ò»°ãÀ´Ëµ£¬×î¼òµ¥µÄ¾ÍÊÇÖ±½ÓÔÚÃüÁîÐÐÏÂÊäÈëmakeÃüÁmakeÃüÁî»áÕÒµ±Ç°Ä¿Â¼µÄmakefileÀ´Ö´ÐУ¬Ò»Çж¼ÊÇ×Ô¶¯µÄ¡£µ«Ò²ÓÐʱÄãÒ²ÐíÖ»ÏëÈÃmakeÖØ±àÒëijЩÎļþ£¬¶ø²»ÊÇÕû¸ö¹¤³Ì£¬¶øÓÖÓеÄʱºòÄãÓм¸Ì×±àÒë¹æÔò£¬ÄãÏëÔÚ²»Í¬µÄʱºòʹÓò»Í¬µÄ±àÒë¹æÔò£¬µÈµÈ¡£±¾Õ½ھÍÊǽ²ÊöÈçºÎʹÓÃmakeÃüÁîµÄ¡£
Ò»¡¢makeµÄÍ˳öÂë
makeÃüÁîÖ´ÐкóÓÐÈý¸öÍ˳öÂ룺
0 —— ±íʾ³É¹¦Ö´ÐС£
1 —— Èç¹ûmakeÔËÐÐʱ³öÏÖÈκδíÎ󣬯䷵»Ø1¡£
2 —— Èç¹ûÄãʹÓÃÁËmakeµÄ“-q”Ñ¡Ï²¢ÇÒmakeʹµÃһЩĿ±ê²»ÐèÒª¸üУ¬ÄÇô·µ»Ø2¡£
MakeµÄÏà¹Ø²ÎÊýÎÒÃÇ»áÔÚºóÐøÕ½ÚÖн²Êö¡£
¶þ¡¢Ö¸¶¨Makefile
Ç°ÃæÎÒÃÇ˵¹ý£¬GNU makeÕÒѰĬÈϵÄMakefileµÄ¹æÔòÊÇÔÚµ±Ç°Ä¿Â¼ÏÂÒÀ´ÎÕÒÈý¸öÎļþ——“GNUmakefile”¡¢“makefile”ºÍ“Makefile”¡£Æä°´Ë³ÐòÕÒÕâÈý¸öÎļþ£¬Ò»µ©ÕÒµ½£¬¾Í¿ªÊ¼¶ÁÈ¡Õâ¸öÎļþ²¢Ö´ÐС£
µ±Ç°£¬ÎÒÃÇÒ²¿ÉÒÔ¸ømakeÃüÁîÖ¸¶¨Ò»¸öÌØÊâÃû×ÖµÄMakefile¡£Òª´ïµ½Õâ¸ö¹¦ÄÜ£¬ÎÒÃÇҪʹÓÃmakeµÄ“-f”»òÊÇ“--file”²ÎÊý£¨“--makefile”²ÎÊýÒ²ÐУ©¡£ÀýÈ磬ÎÒÃÇÓиömakefileµÄÃû×ÖÊÇ“hchen.mk”£¬ÄÇô£¬ÎÒÃÇ¿ÉÒÔÕâÑùÀ´ÈÃmakeÀ´Ö´ÐÐÕâ¸öÎļþ£º
make –f hchen.mk
Èç¹ûÔÚmakeµÄÃüÁîÐÐÊÇ£¬Äã²»Ö»Ò»´ÎµØÊ¹ÓÃÁË“-f”²ÎÊý£¬ÄÇô£¬ËùÓÐÖ¸¶¨µÄmakefile½«»á±»Á¬ÔÚÒ»Æð´«µÝ¸ømakeÖ´ÐС£
Èý¡¢Ö¸¶¨Ä¿±ê
Ò»°ãÀ´Ëµ£¬makeµÄ×îÖÕÄ¿±êÊÇmakefileÖеĵÚÒ»¸öÄ¿±ê£¬¶øÆäËüÄ¿±êÒ»°ãÊÇÓÉÕâ¸öÄ¿±êÁ¬´ø³öÀ´µÄ¡£ÕâÊÇmakeµÄĬÈÏÐÐΪ¡£µ±È»£¬Ò»°ãÀ´Ëµ£¬ÄãµÄmakefileÖеĵÚÒ»¸öÄ¿±êÊÇÓÉÐí¶à¸öÄ¿±ê×é³É£¬Äã¿ÉÒÔָʾmake£¬ÈÃÆäÍê³ÉÄãËùÖ¸¶¨µÄÄ¿±ê¡£Òª´ïµ½ÕâһĿµÄºÜ¼òµ¥£¬ÐèÔÚmakeÃüÁîºóÖ±½Ó¸úÄ¿±êµÄÃû×־ͿÉÒÔÍê³É£¨ÈçÇ°ÃæÌáµ½µÄ“make clean”ÐÎʽ£©
ÈκÎÔÚmakefileÖеÄÄ¿±ê¶¼¿ÉÒÔ±»Ö¸¶¨³ÉÖÕ¼«Ä¿±ê£¬µ«ÊdzýÁËÒÔ“-”´òÍ·£¬»òÊǰüº¬ÁË“=”µÄÄ¿±ê£¬ÒòΪÓÐÕâЩ×Ö·ûµÄÄ¿±ê£¬»á±»½âÎö³ÉÃüÁîÐвÎÊý»òÊDZäÁ¿¡£ÉõÖÁûÓб»ÎÒÃÇÃ÷ȷд³öÀ´µÄÄ¿±êÒ²¿ÉÒÔ³ÉΪmakeµÄÖÕ¼«Ä¿±ê£¬Ò²¾ÍÊÇ˵£¬Ö»Òªmake¿ÉÒÔÕÒµ½ÆäÒþº¬¹æÔòÍÆµ¼¹æÔò£¬ÄÇôÕâ¸öÒþº¬Ä¿±êͬÑù¿ÉÒÔ±»Ö¸¶¨³ÉÖÕ¼«Ä¿±ê¡£
ÓÐÒ»¸ömakeµÄ»·
Ïà¹ØÎĵµ£º
linuxÇý¶¯ ×ÔÐýËøµÄÔËÓÃ
//hello.c
#define __NO_VERSION__
#include <linux/module.h>
#include <linux/config.h>
#include <linux/version.h>
#include <asm/uaccess.h>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/kernel.h>
#inc ......
Ò»¡¢°²×°ºÍÆô¶¯
1.¿ÉÓÃÒÔÏÂÃüÁî²éѯÊÇ·ñÒѰ²×°£º
³ÌÐò´úÂë
#rpm -qa|grep vsftpd
vsftpd-2.0.5-10.e15
Èç¹û³öÏÖÒÔÉϽá¹û£¬±íÃ÷ÒѰ²×°¡£Èç¹ûδ°²×°£¬¿ÉÔÚRed Hat Enterprise Linux 5°²×°¹âÅÌÖÐÕÒµ½°²×°°ü£¬Ê¹ÓÃÃüÁ
³ÌÐò´úÂë
#rpm -ivh vsftp-2.0.5-10.e15.i386.rpm
2.Æô¶¯ºÍ¹Ø±Õ
Æô¶¯ÃüÁîΪ£º
³ÌÐò´ú ......
1¡¢ ÈçºÎÔÚLinuxϵͳÏÂÌí¼ÓÒ»¸öÕÊ»§£ºÓû§ÃûΪstd02£¬ÃÜÂëΪpwd02?
£º#useradd std02
#passwd std02
³öÏÖÌáʾÊäÈë¿ÚÁîpwd02£¬Ôٴΰ´ÌáʾÊäÈëpwd02
Ò²¿ÉÒÔ:
#useradd -n std02 -p pwd02
2¡¢ н¨Ò»¸ö×ÓĿ¼/home/public£¬ÈÃËü±»ËùÓеÄÓû§¹²Ïí£¬¶øÇÒÓµÓÐËùÓÐȨÏÞ£¬µ«²»Äܱ»·ÇÊôÖ÷ɾ³ý£¿
£º#mkdir /home/public
#chm ......
ÂòÁËÒ»±¾linuxÃüÁî¡¢±à¼Æ÷Óëshell±à³Ì£¬ÒÔǰѧϰ¹ýÒ»Õó×Ó£¬ºóÀ´¹¤×÷ʵÔÚ̫棬ûʱ¼ä¿´ÁË£¬½ñÌìÄÃÆðÊéÒ»¿´£¬ÒÔǰ¿´µÄÒ²ÍüÁË£¬ËùÒÔ´Ó½ñÌ쿪ʼ£¬Ð´²©¿Í£¬Ã¿Ìì¶¼¿´£¬ÏàÐżá³ÖºÍ»ýÀÛµÄÁ¦Á¿¡£Ïȸø×Ô¼º´ò´òÆø°É¡£
ÖØ¶¨Ïò£º
Êä³öÖØ¶¨Ïò£ºµ±Ïòlinuxϵͳ·¢³öÃüÁîʱ£¬¿Éָʾ²Ù×÷ϵͳ½«Êä³ö·¢Ë͵½ÈκÎÒ»¸öÖ¸¶¨µÄÉ豸»ò ......
¾Å¡¢Ä£Ê½±äÁ¿
ÔÚGNUµÄmakeÖУ¬»¹Ö§³Öģʽ±äÁ¿£¨Pattern-specific Variable£©£¬Í¨¹ýÉÏÃæµÄÄ¿±ê±äÁ¿ÖУ¬ÎÒÃÇÖªµÀ£¬±äÁ¿¿ÉÒÔ¶¨ÒåÔÚij¸öÄ¿±êÉÏ¡£Ä£Ê½±äÁ¿µÄºÃ´¦¾ÍÊÇ£¬ÎÒÃÇ¿ÉÒÔ¸ø¶¨Ò»Ö֓ģʽ”£¬¿ÉÒ԰ѱäÁ¿¶¨ÒåÔÚ·ûºÏÕâÖÖģʽµÄËùÓÐÄ¿±êÉÏ¡£
ÎÒÃÇÖªµÀ£¬makeµÄ“ģʽ”Ò»°ãÊÇÖÁÉÙº¬ÓÐÒ»¸ö“%&rdquo ......