linuxϵÄso¡¢o¡¢lo¡¢a¡¢laÎļþÓÐÊ²Ã´Çø±ð£¿
o: ±àÒëµÄÄ¿±êÎļþ
a: ¾²Ì¬¿â£¬Æäʵ¾ÍÊǰÑÈô¸ÉoÎļþ´òÁ˸ö°ü
so: ¶¯Ì¬Á´½Ó¿â£¨¹²Ïí¿â£©
lo: ʹÓÃlibtool±àÒë³öµÄÄ¿±êÎļþ£¬Æäʵ¾ÍÊÇÔÚoÎļþÖÐÌí¼ÓÁËһЩÐÅÏ¢
la: ʹÓÃlibtool±àÒë³öµÄ¿âÎļþ£¬ÆäʵÊǸöÎı¾Îļþ£¬¼Ç¼ͬÃû¶¯Ì¬¿âºÍ¾²Ì¬¿âµÄÏà¹ØÐÅÏ¢
1 libtoolµÄ¹¤×÷ÔÀí
libtool ÊÇÒ»¸öͨÓÿâÖ§³Ö½Å±¾£¬½«Ê¹Óö¯Ì¬¿âµÄ¸´ÔÓÐÔÒþ²ØÔÚͳһ¡¢¿ÉÒÆÖ²µÄ½Ó¿ÚÖУ»Ê¹ÓÃlibtoolµÄ±ê×¼·½·¨£¬¿ÉÒÔÔÚ²»Í¬Æ½Ì¨ÉÏ´´½¨²¢µ÷Óö¯Ì¬¿â¡£¿ÉÒÔÈÏΪlibtoolÊÇgccµÄÒ»¸ö³éÏ󣬯ä°ü×°ÁËgcc£¨»òÕ߯äËûµÄ±àÒëÆ÷£©£¬Óû§ÎÞÐèÖªµÀϸ½Ú£¬Ö»Òª¸æËßlibtoolÐèÒª±àÒëÄÄЩ¿â¼´¿É£¬libtool½«´¦Àí¿âµÄÒÀÀµµÈϸ½Ú¡£libtoolÖ»Óëºó׺ÃûΪlo¡¢laΪµÄlibtoolÎļþ´ò½»µÀ¡£
libtoolÖ÷ÒªµÄÒ»¸ö×÷ÓÃÊÇÔÚ±àÒë´óÐÍÈí¼þµÄ¹ý³ÌÖнâ¾öÁË¿âµÄÒÀÀµÎÊÌ⣻½«·±ÖصĿâÒÀÀµ¹ØÏµµÄά»¤¹¤×÷³Ðµ£ÏÂÀ´£¬´Ó¶øÊÍ·ÅÁ˳ÌÐòÔ±µÄÈËÁ¦×ÊÔ´¡£libtoolÌṩͳһµÄ½Ó¿Ú£¬Òþ²ØÁ˲»Í¬Æ½Ì¨¼ä¿âµÄÃû³ÆµÄ²îÒìµÈϸ½Ú£¬Éú³ÉÒ»¸ö³éÏóµÄºó׺ÃûΪla¸ß²ã¿âlibxx.la£¨ÆäʵÊǸöÎı¾Îļþ£©£¬²¢½«¸Ã¿â¶ÔÆäËü¿âµÄÒÀÀµ¹ØÏµ£¬¶¼Ð´ÔÚ¸ÃlaµÄÎļþÖС£¸ÃÎļþÖеÄdependency_libs¼Ç¼¸Ã¿âÒÀÀµµÄËùÓп⣨ÆäÖÐÓÐЩÊÇÒÔ.laÎļþµÄÐÎʽ¼ÓÈëµÄ£©£»libdirÔòÖ¸³öÁË¿âµÄ°²×°Î»Öã»library_names¼Ç¼Á˹²Ïí¿âµÄÃû×Ö£»old_library¼Ç¼Á˾²Ì¬¿âµÄÃû×Ö¡£
µ±±àÒë¹ý³Ìµ½link½×¶ÎµÄʱºò£¬Èç¹ûÓÐÏÂÃæµÄÃüÁ
$libtool --mode=link gcc -o myprog -rpath /usr/lib –L/usr/lib –la
libtool»áµ½/usr/lib·¾¶ÏÂȥѰÕÒliba.la£¬È»ºó´ÓÖжÁȡʵ¼ÊµÄ¹²Ïí¿âµÄÃû×Ö£¨library_namesÖмǼÁ˸ÃÃû×Ö£¬±ÈÈçliba.so£©ºÍ·¾¶(lib_dirÖмǼÁË£¬±ÈÈçlibdir=’/usr/lib’)£¬·µ»ØÖîÈç/usr/lib/liba.soµÄ²ÎÊý¸ø¼¤·¢³öµÄgccÃüÁîÐС£
Èç¹ûliba.soÒÀÀµÓÚ¿â/usr/lib/libb.so£¬ÔòÔÚliba.laÖн«»áÓÐdependency_libs=’-L/usr/lib -lb’»òÕßdependency_libs=’/usr/lib/libb.la’µÄÐУ¬Èç¹ûÊÇǰÕߣ¬Æä½«Ö±½Ó°Ñ“-L/usr/lib –lb”µ±×÷²ÎÊý´«¸øgccÃüÁîÐУ»Èç¹ûÊǺóÕߣ¬libtool½«´Ó/usr/lib/libb.laÖжÁȡʵ¼ÊµÄlibb.soµÄ¿âÃû³ÆºÍ·¾¶£¬È»ºó×éºÏ³É²ÎÊý“/usr/lib/libb.so”´«µÝ¸øgccÃüÁîÐС£
µ±ÒªÉú³ÉµÄÎļþÊÇÖîÈçlibmylib.laµÄʱºò£¬±ÈÈ磺
$libtool --mode=link gcc -o libmylib.la -rpath /usr/lib –L/usr/lib –la
ÆäÒÀÀµµÄ¿âµÄËÑË÷»ù±¾ÀàËÆ£¬Ö»ÊÇÔÚÕâ¸öʱºò»á¸ù¾ÝÏàÓ¦µÄ¹æÔòÉú³ÉÏàÓ¦µÄ¹²Ïí¿
Ïà¹ØÎĵµ£º
ÔÚLinuxÄÚºËÀïÄÚ´æ¿ÉÒÔºÍÓ²Å̿ռäͨÓõ쬵±ÄÚ´æÀûÓúÜÉÙʱ£¬Êý¾Ý¿ÉÒÔ´æµ½ÄÚ´æÀ·´Ö®Ó²Å̿ռä¿ÉÒÔÓÃÀ´µ±ÄÚ´æÓõ«ÊÇÓиö¹²Í¬µãÊý¾Ý×ÜÊÇÏÖÔÚÄÚ´æÀï²Ù×÷ÔÙд»Øµ½Ó²ÅÌÉϵġ£ÓÉÓÚÕâ¸öÔÒò£¬¿é´æ´¢É豸±»µ±³Éºó±¸´æ´¢Æ÷¡£
LinuxÌṩÁËÁ½ÖÖ²Ù×÷µÄ·½·¨£º
1 ºǫ́½ø³Ì²»Í£µÄ¼ì²éϵͳÄÚ´æÖÜÆÚÐÔµÄд²Ù×÷
2 µ±ÏµÍ³ÓÐÌ«¶àµÄÔàÒ³ÐèÒª ......
http://blog.csdn.net/adcxf/archive/2009/03/14/3989725.aspx
¹² ÏíÄÚ´æ¿ÉÒÔ˵ÊÇ×îÓÐÓõĽø³Ì¼äͨÐÅ·½Ê½£¬Ò²ÊÇ×î¿ìµÄIPCÐÎʽ¡£Á½¸ö²»Í¬½ø³ÌA¡¢B¹²ÏíÄÚ´æµÄÒâ˼ÊÇ£¬Í¬Ò»¿éÎïÀíÄÚ´æ±»Ó³Éäµ½½ø³ÌA¡¢B¸÷×ԵĽø³ÌµØÖ·¿Õ ¼ä¡£½ø³ÌA¿ÉÒÔ¼´Ê±¿´µ½½ø³ÌB¶Ô¹²ÏíÄÚ´æÖÐÊý¾ÝµÄ¸üУ¬·´Ö®ÒàÈ»¡£ÓÉÓÚ¶à¸ö½ø³Ì¹²Ïíͬһ¿éÄÚ´æÇøÓò£¬±ØÈ»ÐèÒ ......
ËäȻѧ¹ý
Linux Shell
±à³Ì£¬µ«ÓÉÓÚ±àд
Shell
½Å±¾µÄ»ú»áʵÔÚÊDZȽÏÉÙ
(
ͨ³£ÔÚÏîÄ¿³õÆÚ´î½¨¿ª·¢»·¾³Ê±±àдµÃ±È½Ï
¶àһЩ
)
£¬ËùÒÔÒ»
ЩÓï·¨¾Ã¶ø¾ÃÖ®¾Í»áÍüÁË£¬Ò»¸ö¼òµ¥µÄÓ﷨ȥ·ÊéЧÂÊʵÔÚÊÇÂý£¬ËùÒԾ͸öÈËÕûÀíÁËÒ»¸ö±í¸ñ£¬ÓÉÓÚÎÒÓõıà³ÌÓïÑÔÊÇ
C/C++
£¬ËùÒÔÔÚ±à³ÌµÄʱºòÍùÍùÄÔº£ÀïÃæÊ×
Ïȸ¡ÏÖµÄÊÇÓÃ
C
......
ls -l|grep ^d ----Áгöµ±Ç°Ä¿Â¼ÏµÄÎļþ¼Ð
ls -l|grep ^d|grep "tmp" ----Áгöµ±Ç°Ä¿Â¼ÏÂÃ÷×Óº¬ÓÐ"tmp"µÄÎļþ¼Ð
for dir in `ls -l ~/dxy/|grep ^d | awk '{print $9}'` ---- awk '{print $9}' ,Ö»print Îļþ¼ÐµÄÃû×Ö
do
echo "==== $dir"
cd ~/dxy;cd $dir/
t=`ls -l|grep ^d|grep " ......