Linux ¹ØÓÚ¶¯Ì¬Á´½Ó¿âÒÔ¼°¾²Ì¬Á´½Ó¿âµÄһЩ¸ÅÄî
¿âÓж¯Ì¬Ó뾲̬Á½ÖÖ£¬¶¯Ì¬Í¨³£ÓÃ.soΪºó׺£¬¾²Ì¬ÓÃ.aΪºó׺¡£ÀýÈ磺libhello.so libhello.a
ΪÁËÔÚͬһϵͳÖÐʹÓò»Í¬°æ±¾µÄ¿â£¬¿ÉÒÔÔÚ¿âÎļþÃûºó¼ÓÉϰ汾ºÅΪºó׺,ÀýÈ磺 libhello.so.1.0,ÓÉÓÚ³ÌÐòÁ¬½ÓĬÈÏÒÔ.soΪÎļþºó׺Ãû¡£ËùÒÔΪÁËʹÓÃÕâЩ¿â£¬Í¨³£Ê¹Óý¨Á¢·ûºÅÁ¬½ÓµÄ·½Ê½¡£
ln -s libhello.so.1.0 libhello.so.1
ln -s libhello.so.1 libhello.so
ʹÓÿâ
µ± ҪʹÓþ²Ì¬µÄ³ÌÐò¿âʱ£¬Á¬½ÓÆ÷»áÕÒ³ö³ÌÐòËùÐèµÄº¯Êý£¬È»ºó½«ËüÃÇ¿½±´µ½Ö´ÐÐÎļþ£¬ÓÉÓÚÕâÖÖ¿½±´ÊÇÍêÕûµÄ£¬ËùÒÔÒ»µ©Á¬½Ó³É¹¦£¬¾²Ì¬³ÌÐò¿âÒ²¾Í²»ÔÙÐèÒªÁË¡£È» ¶ø£¬¶Ô¶¯Ì¬¿â¶øÑÔ£¬¾Í²»ÊÇÕâÑù¡£¶¯Ì¬¿â»áÔÚÖ´ÐгÌÐòÄÚÁôÏÂÒ»¸ö±ê¼Ç‘Ö¸Ã÷µ±³ÌÐòÖ´ÐÐʱ£¬Ê×ÏȱØÐëÔØÈëÕâ¸ö¿â¡£ÓÉÓÚ¶¯Ì¬¿â½ÚÊ¡¿Õ¼ä£¬linuxϽøÐÐÁ¬½ÓµÄ ȱʡ²Ù×÷ÊÇÊ×ÏÈÁ¬½Ó¶¯Ì¬¿â£¬Ò²¾ÍÊÇ˵£¬Èç¹ûͬʱ´æÔÚ¾²Ì¬ºÍ¶¯Ì¬¿â£¬²»ÌرðÖ¸¶¨µÄ»°£¬½«Ó붯̬¿âÏàÁ¬½Ó¡£
ÏÖÔÚ¼ÙÉèÓÐÒ»¸ö½ÐhelloµÄ³ÌÐò¿ª·¢°ü£¬ËüÌṩһ¸ö¾²Ì¬¿âlibhello.a Ò»¸ö¶¯Ì¬¿âlibhello.so,Ò»¸öÍ·Îļþhello.h,Í·ÎļþÖÐÌṩsayhello()Õâ¸öº¯Êý
/* hello.h */
void sayhello();
ÁíÍ⻹ÓÐһЩ˵Ã÷Îĵµ¡£ÕâÒ»¸öµäÐ͵ijÌÐò¿ª·¢°ü½á¹¹
1.Ó붯̬¿âÁ¬½Ó
linuxĬÈϵľÍÊÇÓ붯̬¿âÁ¬½Ó£¬ÏÂÃæÕâ¶Î³ÌÐòtestlib.cʹÓÃhello¿âÖеÄsayhello()º¯Êý
/*testlib.c*/
#include
#include
int main()
{
sayhello();
return 0;
}
ʹÓÃÈçÏÂÃüÁî½øÐбàÒë
$gcc -c testlib.c -o testlib.o
ÓÃÈçÏÂÃüÁîÁ¬½Ó£º
$gcc testlib.o -lhello -o testlib
ÔÚÁ¬½ÓʱҪעÒ⣬¼ÙÉèlibhello.o ºÍlibhello.a¶¼ÔÚȱʡµÄ¿âËÑË÷·¾¶ÏÂ/usr/libÏ£¬Èç¹ûÔÚÆäËüλÖÃÒª¼ÓÉÏ-L²ÎÊý
ÓëÓ뾲̬¿âÁ¬½ÓÂ鷳һЩ£¬Ö÷ÒªÊDzÎÊýÎÊÌâ¡£»¹ÊÇÉÏÃæµÄÀý×Ó£º
$gcc testlib.o -o testlib -WI,-Bstatic -lhello
×¢£ºÕâ¸öÌØ±ðµÄ"-WI£¬-Bstatic"²ÎÊý£¬Êµ¼ÊÉÏÊÇ´«¸øÁËÁ¬½ÓÆ÷ld.
ָʾËüÓ뾲̬¿âÁ¬½Ó£¬Èç¹ûϵͳÖÐÖ»Óо²Ì¬¿âµ±È»¾Í²»ÐèÒªÕâ¸ö²ÎÊýÁË¡£
Èç¹ûÒªºÍ¶à¸ö¿âÏàÁ¬½Ó£¬¶øÃ¿¸ö¿âµÄÁ¬½Ó·½Ê½²»Ò»Ñù£¬±ÈÈçÉÏÃæµÄ³ÌÐò¼ÈÒªºÍlibhello½øÐо²Ì¬Á¬½Ó£¬ÓÖÒªºÍlibbye½øÐж¯Ì¬Á¬½Ó£¬ÆäÃüÁîӦΪ£º
$gcc testlib.o -o testlib -WI,-Bstatic -lhello -WI,-Bdynamic -lbye
3.¶¯Ì¬¿âµÄ·¾¶ÎÊÌâ
ΪÁËÈÃÖ´ÐгÌÐò˳ÀûÕÒµ½¶¯Ì¬¿â£¬ÓÐÈýÖÖ·½·¨£º
(1)°Ñ¿â¿½±´µ½/usr/libºÍ/libĿ¼Ï¡£
(2)ÔÚLD_LIBRARY_PATH»·¾³±äÁ¿ÖмÓÉÏ¿âËùÔÚ·¾¶¡£ÀýÈ綯̬¿âlibhello.soÔÚ/home/ting
Ïà¹ØÎĵµ£º
ÎÒÔÚÏîÄ¿µÄ¿ª·¢ÖÐÓöµ½ÁËÕâÑùÒ»¸öÎÊÌ⣬ÎÒÒª°ÑÏÂλ»úʵʱ²É¼¯µÄÊý¾Ý£¬Í¨¹ý»æÍ¼ÏÔʾµ½ÆÁÄ»ÉÏ£¬ÎÒ²ÉÓÃÁËÕâÑùµÄ˼·£¬¿ªÆôÒ»¸öÏß³ÌÀ´½ÓÊÕÏÂλ»úµÄÊý¾Ý£¬²»ÖÁÓÚʹÖ÷Ïß³Ì×èÈû£¬×ʼÎÒÏëµ½µÄÊÇgtk_widget_queue_draw£¬¸ù±¾¾Í²»ÊµÊ±£¬ÒòΪÕâ¸öº¯ÊýÊÇÒì²½µÄ£¬Èç¹ûÏß³ÌÑ»·µÄ±È½ÏƵ·±µÄ»°£¬»æÍ¼Çø¾ÍÀ´²»¼°Ë¢Ð£¬¸üºÎ¿öÎÒÓÐ10¸ödraw_ ......
/etc/services
InternetÍøÂç·þÎñÎļþ£¬¼ÇÂ¼ÍøÂç·þÎñÃûºÍËüÃǶÔӦʹÓõĶ˿ںż°ÐÒé¡£ÎļþÖеÄÿһÐжÔÓ¦Ò»ÖÖ·þÎñ£¬ËüÓÉ4¸ö×Ö¶Î×é³É£¬ÖмäÓÃTAB»ò¿Õ¸ñ·Ö¸ô£¬·Ö±ð±íʾ“·þÎñÃû³Æ”¡¢“ʹÓö˿ڔ¡¢“ÐÒéÃû³Æ”ÒÔ¼°“±ðÃû”¡£ÏÂÃæÊÇÕâ¸öÎļþµÄ½ÚÑ¡ÄÚÈÝ¡£
tcpmux 1/tcp ......
´óÖÂ×ܽáÁËÒ»ÏÂlinuxϸ÷ÖÖ¸ñʽµÄѹËõ°üµÄѹËõ¡¢½âѹ·½·¨¡£µ«ÊDz¿·Ö·½·¨ÎÒûÓÐÓõ½£¬Ò²¾Í²»È«£¬Ï£Íû´ó¼Ò°ïÎÒ²¹³ä£¬ÎÒÃǽ«ËæÊ±ÐÞ¸ÄÍêÉÆ£¬Ð»Ð»£¡
¡¡¡¡.tar
¡¡¡¡½â°ü£º tar xvf FileName.tar
¡¡¡¡´ò°ü£ºtar cvf FileName.tar DirName
¡¡¡¡£¨×¢£ºtarÊÇ´ò°ü£¬²»ÊÇѹËõ£¡£©
¡¡¡¡---------------------------- ......
Ò». yumÊÇʲô
yum = Yellow dog Updater, Modified
Ö÷Òª¹¦ÄÜÊǸü·½±ãµÄÌí¼Ó/ɾ³ý/¸üÐÂRPM°ü.
ËüÄÜ×Ô¶¯½â¾ö°üµÄÒÐÀµÐÔÎÊÌâ.
ËüÄܱãÓÚ¹ÜÀí´óÁ¿ÏµÍ³µÄ¸üÐÂÎÊÌâ
¶þ. yumÌØµã
*¿ÉÒÔͬʱÅäÖöà¸ö×ÊÔ´¿â(Repository)
*¼ò½àµÄÅäÖÃÎļþ(/etc/yum.conf
*×Ô¶¯½â¾öÔö¼Ó»òɾ³ýrpm°üʱÓöµ½µÄÒÐÀµÐÔÎÊÌâ
*ʹÓ÷½±ã
*± ......
c++¿âÎļþÖеķûºÅµÄº¬Ò壺
ËùÓеķûºÅ¶¼ÊÇÒÔÏ»®Ïß¼ÓÉÏ´óд×ÖĸҲ¾ÍÊÇ"_Z"¿ªÍ·£¬¶ÔÓÚÔÚ ÀàÀï»òÕßÃüÃû¿Õ¼äÖеķûºÅ£¬ºóÃæ½ô¸ú"N"£¬È»ºóÊǸ÷¸öÃüÃû¿Õ¼äºÍÀàµÄÃû×Ö£¬Ã¿¸öÃû×ÖǰÊÇÃû×Ö×Ö·û´®µÄ³¤¶È£¬ËæºóÊÇ´óд×Öĸ"E"£¬¶ÔÓÚÒ»¸öº¯Êý£¬ËûµÄ²ÎÊýÁÐ±í¶¼ÔÚEºóÃæ£¬ ......