Linux/Unix»·¾³ÏµÄmakeºÍmakefileÏê½â
×÷ÕߣºCMK ³ö´¦£ºUnix°®ºÃÕß¼ÒÔ°unix-cd.com ¸üÐÂʱ¼ä£º 2006Äê05ÔÂ22ÈÕ
ÎÞÂÛÊÇÔÚLinux»¹ÊÇÔÚUnix»·¾³ÖУ¬make¶¼ÊÇÒ»¸ö·Ç³£ÖØÒªµÄ±àÒëÃüÁî¡£²»¹ÜÊÇ×Ô¼º½øÐÐÏîÄ¿¿ª·¢»¹Êǰ²×°Ó¦ÓÃÈí¼þ£¬ÎÒÃǶ¼¾³£ÒªÓõ½make»òmake install¡£ÀûÓÃmake¹¤¾ß£¬ÎÒÃÇ¿ÉÒÔ½«´óÐ͵Ŀª·¢ÏîÄ¿·Ö½â³ÉΪ¶à¸ö¸üÒ×ÓÚ¹ÜÀíµÄÄ£¿é£¬¶ÔÓÚÒ»¸ö°üÀ¨¼¸°Ù¸öÔ´ÎļþµÄÓ¦ÓóÌÐò£¬Ê¹ÓÃmakeºÍmakefile¹¤¾ß¾Í¿ÉÒÔ¼ò½àÃ÷¿ìµØÀí˳¸÷¸öÔ´ÎļþÖ®¼ä·×·±¸´ÔÓµÄÏ໥¹ØÏµ¡£¶øÇÒÈç´Ë¶àµÄÔ´Îļþ£¬Èç¹ûÿ´Î¶¼Òª¼üÈëgccÃüÁî½øÐбàÒëµÄ»°£¬ÄǶԳÌÐòÔ±À´Ëµ¼òÖ±¾ÍÊÇÒ»³¡ÔÖÄÑ¡£¶ømake¹¤¾ßÔò¿É×Ô¶¯Íê³É±àÒ빤×÷£¬²¢ÇÒ¿ÉÒÔÖ»¶Ô³ÌÐòÔ±ÔÚÉϴαàÒëºóÐ޸ĹýµÄ²¿·Ö½øÐбàÒë¡£Òò´Ë£¬ÓÐЧµÄÀûÓÃmakeºÍmakefile¹¤¾ß¿ÉÒÔ´ó´óÌá¸ßÏîÄ¿¿ª·¢µÄЧÂÊ¡£Í¬Ê±ÕÆÎÕmakeºÍmakefileÖ®ºó£¬ÄúÒ²²»»áÔÙÃæ¶Ô×ÅLinuxϵÄÓ¦ÓÃÈí¼þÊÖ×ãÎÞ´ëÁË¡£
¡¡¡¡µ«ÁîÈËÒź¶µÄÊÇ£¬ÔÚÐí¶à½²ÊöLinuxÓ¦ÓõÄÊé¼®É϶¼Ã»ÓÐÏêϸ½éÉÜÕâ¸ö¹¦ÄÜÇ¿´óµ«Óַdz£¸´ÔӵıàÒ빤¾ß¡£ÔÚÕâÀïÎÒ¾ÍÏò´ó¼ÒÏêϸ½éÉÜÒ»ÏÂmake¼°ÆäÃèÊöÎļþmakefile¡£
MakefileÎļþ
¡¡¡¡Make¹¤¾ß×îÖ÷ÒªÒ²ÊÇ×î»ù±¾µÄ¹¦ÄܾÍÊÇͨ¹ýmakefileÎļþÀ´ÃèÊöÔ´³ÌÐòÖ®¼äµÄÏ໥¹ØÏµ²¢×Ô¶¯Î¬»¤±àÒ빤×÷¡£¶ømakefile ÎļþÐèÒª°´ÕÕijÖÖÓï·¨½øÐбàд£¬ÎļþÖÐÐèҪ˵Ã÷ÈçºÎ±àÒë¸÷¸öÔ´Îļþ²¢Á¬½ÓÉú³É¿ÉÖ´ÐÐÎļþ£¬²¢ÒªÇó¶¨ÒåÔ´ÎļþÖ®¼äµÄÒÀÀµ¹ØÏµ¡£makefile ÎļþÊÇÐí¶à±àÒëÆ÷--°üÀ¨ Windows NT ϵıàÒëÆ÷--ά»¤±àÒëÐÅÏ¢µÄ³£Ó÷½·¨£¬Ö»ÊÇÔÚ¼¯³É¿ª·¢»·¾³ÖУ¬Óû§Í¨¹ýÓѺõĽçÃæÐÞ¸Ä makefile Îļþ¶øÒÑ¡£
¡¡¡¡ÔÚ UNIX ϵͳÖУ¬Ï°¹ßʹÓà Makefile ×÷Ϊ makfile Îļþ¡£Èç¹ûҪʹÓÃÆäËûÎļþ×÷Ϊ makefile£¬Ôò¿ÉÀûÓÃÀàËÆÏÂÃæµÄ make ÃüÁîÑ¡ÏîÖ¸¶¨ makefile Îļþ£º
¡¡¡¡$ make -f Makefile.debug
¡¡¡¡ÀýÈ磬һ¸öÃûΪprogµÄ³ÌÐòÓÉÈý¸öCÔ´Îļþfilea.c¡¢fileb.cºÍfilec.cÒÔ¼°¿âÎļþLS±àÒëÉú³É£¬ÕâÈý¸öÎļþ»¹·Ö±ð°üº¬×Ô¼ºµÄÍ·Îļþa.h ¡¢b.hºÍc.h¡£Í¨³£Çé¿öÏ£¬C±àÒëÆ÷½«»áÊä³öÈý¸öÄ¿±êÎļþfilea.o¡¢fileb.oºÍfilec.o¡£¼ÙÉèfilea.cºÍfileb.c¶¼ÒªÉùÃ÷Óõ½Ò»¸öÃûΪdefsµÄÎļþ£¬µ«filec.c²»Ó᣼´ÔÚfilea.cºÍfileb.cÀï¶¼ÓÐÕâÑùµÄÉùÃ÷£º
¡¡¡¡#include "defs"
¡¡¡¡ÄÇôÏÂÃæµÄÎĵµ¾ÍÃèÊöÁËÕâЩÎļþÖ®¼äµÄÏ໥ÁªÏµ:
¡¡¡¡------------------------------------------------------
Ïà¹ØÎĵµ£º
ÓÉÓÚ Linux Á¼ºÃµÄÓû§È¨ÏÞ¹ÜÀíÌåϵ£¬²¡¶¾ÍùÍùÊÇ Linux ϵͳ¹ÜÀíÔ±×îºó²ÅÐèÒª¿¼ÂǵÄÎÊÌâ¡£ÒÔÍù£¬Linux ÉϵÄɱ¶¾Èí¼þÖ÷ÒªÊÇΪÆóÒµµÄÓʼþºÍÎļþ·þÎñÆ÷ËùÉè¼ÆµÄ¡£Èç½ñ£¬Ëæ×Å Linux ×ÀÃæÓû§ÊýÁ¿µÄÔö³¤£¬×ÀÃæÓû§ÔÚÊÜÒæÓÚ Linux ϵͳ¶Ô²¡¶¾½ÏÇ¿µÄÌìÈ»ÃâÒßÁ¦µÄͬʱ£¬Ò²ÐèҪɱ¶¾Èí¼þÇåÀí´ÓÍøÂç»òUÅÌ´øÀ´µÄWIndows²¡¶¾¡£¾¡¹ÜÄÇЩ ......
M. Tim Jones, ¹ËÎʹ¤³Ìʦ, Emulex Corp.
2009 Äê 4 ÔÂ 07 ÈÕ
Linux® ÄÚºËʹÓà GNU Compiler Collection (GCC) Ì×¼þµÄ¼¸¸öÌØÊ⹦ÄÜ¡£ÕâЩ¹¦ÄܰüÀ¨Ìṩ¿ì½Ý·½Ê½ºÍ¼ò»¯ÒÔ¼°Ïò±àÒëÆ÷ÌṩÓÅ»¯ÌáʾµÈµÈ¡£Á˽âÕâÐ©ÌØÊâµÄ GCC ÌØÐÔ£¬Ñ§Ï°ÈçºÎÔÚ Linux ÄÚºËÖÐʹÓÃËüÃÇ¡£
GCC ºÍ Linux ÊdzöÉ«µÄ×éºÏ¡£¾¡¹ÜËüÃÇÊǶÀÁ¢µÄÈí¼þ ......
Ç°ÃæËµ¹ý£¬Ö»ÒªÖªµÀÎļþµÄË÷Òý½ÚµãºÅ£¬¾Í¿ÉÒԵõ½ÄǸöÎļþ¡£µ«ÊÇÎÒÃÇÔÚ²Ù×÷Îļþʱ£¬´ÓûÌý˵˻áÄÃ×ÅË÷Òý½ÚµãºÅÀ´²Ù×÷Îļþ£¬ÎÒÃÇÖ»ÖªµÀÎļþÃû¶øÒÑ¡£ ËüÃÇÊÇÈçºÎ"ºÍг"ÆðÀ´µÄÄØ£¿linux°ÑĿ¼Ҳ¿´³ÉÒ»ÖÖÎļþ£¬ÀïÃæ¼Ç¼×ÅÎļþÃûÓëË÷Òý½ÚµãºÅµÄ¶ÔÓ¦¹ØÏµ£¨Ä¿Â¼´æÔÚµÄÔÒò£©¡£±ÈÈçÔÚext3ÎļþϵͳÖУ¬Èç¹ûÎļþÊÇÒ»¸öÄ¿  ......
1,˵Ã÷:
ulimitÓÃÓÚshellÆô¶¯½ø³ÌËùÕ¼ÓõÄ×ÊÔ´.
2,Àà±ð:
shellÄÚ½¨ÃüÁî
3,Óï·¨¸ñʽ:
ulimit [-acdfHlmnpsStvw] [size]
4,²ÎÊý½éÉÜ:
-H ÉèÖÃÓ²¼þ×ÊÔ´ÏÞÖÆ.
-S ÉèÖÃÈí¼þ×ÊÔ´ÏÞÖÆ.
-a ÏÔʾµ±Ç°ËùÓеÄ×ÊÔ´ÏÞÖÆ.
-c size:ÉèÖÃcoreÎļþµÄ×î´óÖµ.µ¥Î»:blocks
-d size:ÉèÖÃÊý¾Ý¶ÎµÄ×î´óÖµ.µ¥Î»:kbytes
-f size:ÉèÖô´½¨ ......
linuxµÄÍø¿¨IPµØÖ·ÊÇ´æ·ÅÔÚÎĵµÖеģ¬Õâ¸öÅäÖÃÎĵµÔÚ/etc/sysconfig/network-scriptsÏ£¬Ãû³Æ·Ö±ðΪifcfg-eth0,ifcfg-eth1....¼ÙÈçÄúÓÐÒ»¿éÍø¿¨£¬¾ÍÖ»ÓÐifcfg-eth0Ò»¸öÎĵµ£¬¼ÙÈçÄúÓÐÁ½¿é»òÁ½¿éÒÔÉϵÄÍø¿¨£¬¾Í»áÓÐifcfg-eth1¡¢ifcfg-eth2µÈÎĵµµÄ³öÏÖ¡£
Îĵµ½á¹¹£º
DEVICE=eth0 &n ......