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

ÔÚLinuxÏÂÈçºÎʹÓÃ×Ô¼ºµÄ¿âº¯Êý

Ò»

ʹÓÃ¿â±ØÒªÐÔ
  
Ìá¸ß´úÂëÖØÓÃÐÔ¡£
¶þ
 
¿âµÄÖÖÀࣺ
  
1
¾²Ì¬¿â
    
Ò»°ãÒÔ
*.a
ÃüÃû¡£
    
³ÌÐò±àÒëʱ±»¼ÓÔØ£¬´Ëºó£¬Ö»Òª³ÌÐò²»±»ÖØÐ±àÒ룬¾²Ì¬¿â¾ÍûÓÐ×÷ÓÃÁË£¨¿ÉÒÔɾµô£©¡£
ÓÉ
ÓÚ¾²Ì¬¿âµÄ´úÂëÔÚ±àÒë¹ý³ÌÖÐÒѾ­±»ÔØÈë¿ÉÖ´ÐгÌÐò£¬Òò´ËÌå»ý½Ï´ó£¬Èç¹ûÓжà¸öÓ¦ÓóÌÐò¶¼ÓÃÁËͬһ¸ö¾²Ì¬¿â£¬ÔÚ´æ·Å¿ÉÖ´ÐгÌÐòµÄÓ²ÅÌÖоͻáÓÐÕâ¸ö¾²Ì¬¿âµÄ¶à
·Ý¿½±´¡£Èç¹ûËûÃÇͬʱÔÚÔËÐУ¬ÄÇôÔÚÄÚ´æÖÐÒ²»áÓÐÕâ¸ö¾²Ì¬¿âµÄ¶à·Ý¿½±´¡£µ«ÊÇÈçÏÂÃæÌáµ½µÄ¶¯Ì¬¿âÏà±È½Ï£¬³ÌÐòÖ´ÐÐʱ¼ä±È½Ï¶Ì£¬ÒòΪûÓÐÖ´ÐÐʱ¿âº¯ÊýµÄ¼Ó
ÔØ¡£Ëùν“ÒԿռ任ʱ¼ä”¡£
   
ÏÂÃæÎÒÃÇÓÃÒ»¸öʵÀý˵Ã÷¾²Ì¬¿âµÄ±à³ÌºÍʹÓá£
    
//
¿âº¯Êý£º
hellowlib.c
    
#include <stdlib.h>
void printhellow()    
{
   
      
printf("hellow,now in lib routine\n");
   
      
return ;
}
Ê×ÏÈÉú³ÉÄ¿±êÎļþ£º
gcc -c 
printhellow.c  
–o printhellow.o
È»ºóʹÓÃ
ar
£¨
archive
£©ÃüÁî°ÑÄ¿±êÎļþÖÆ×÷¿âÎļþ£º
ar cqs libhello.a printhellow.o
×¢Òâ¿âÎļþÃûÒ»¶¨ÊÇ
lib***.a
¸ñʽ£¬²»ÒªÍüÁ˼Ó
lib
×÷Ϊǰ׺¡£
ÏÂÃæÎÒÃÇдһ¸ö³ÌÐòµ÷Óþ²Ì¬¿â
libhello.a
ÖеÄ
printhellow
º¯Êý¡£
//testlib.c
int main(int arc, char **argv)
{
  
printhellow();
   
return ;
}
ÏÂÃæ±àÒ룺
gcc -o testlib testlib.c -L ./  
-lhello
¼´¿ÉÉú³É¿ÉÖ´ÐÐÎļþ
testlib
¡£
×¢ÒâÉÏÃæµÄ
-L
£¨´óд£©Ö¸Ê¾¿âµÄ·¾¶ÔÚµ±Ç°Ä¿Â¼Ï¡£Èç¹ûûÓÐÕâ¸öÑ¡Ï¾ÍÐèÒª°Ñ¿â
libhello.a
¼ÓÈëµ½±ê׼·¾¶ÖС£Èç
/usr/lib
ÖС£
-l
£¨Ð¡Ð´£©Ö»ÐèÒª¸ú
hello
£¬ÆäËû×Ö·ûÈ«²¿²»Òª£¬·ñÔò³ö´í¡£
 
 
  
2
¶¯Ì¬¿â£¨¹²Ïí¿â£©
Ò»°ãÒÔ
.so
ÃüÃû£¨
share object
£©
Ó뾲̬¿â²»Í¬£¬¹²Ïí¿âµÄ´úÂëÊÇÔÚ¿ÉÖ´ÐгÌÐòÔËÐÐʱ²ÅÔØÈëÄÚ´æµÄ£¬ÔÚ±àÒë¹ý³ÌÖнö¼òµ¥µÄÒýÓã¬Òò´Ë´úÂëÌå»ý½ÏС¡£ÓëÉÏÃæÌáµ½µÄ¾²Ì¬¿âÏà±È£¬ºÜÊǽÚÔ¼¿Õ¼ä¡£µ«ÔËÐÐʱÐèÒªÔØÈ룬Òò´ËÔËÐÐʱ¼äÏà¶Ô¾²Ì¬¿â¶øÑԱȽϳ¤¡£Ëùν“ÒÔʱ


Ïà¹ØÎĵµ£º

Ubuntu8.04ϱàÒëlinuxÄÚºË

½ñÌì¿´µ½Ê¦ÐÖ¹¤Î»ÉÏÓб¾Linux Kernel In a Nutshell£¬»¹ÊÇȫӢµÄÓ°Ó¡°æ£¬ËùÒԾͽè¹ýÀ´¿´¿´£¬·¢ÏÖÏÖÔÚ¿´Ó¢ÎĵÄÊé½¥½¥ÊÊÓ¦ÁË£¬»¹ÊDZȽÏÈÝÒ׵ģ¬ÊéÖпªÊ¼½éÉÜÈçºÎ±àÒëLinuxÄںˣ¬LinuxÄں˴óÈýµÄʱºòҲѧ¹ý±àÒë¹ý£¬µ«Êǵ±Ê±±àÒë±È½Ï¼òµ¥£¬Õâ´Î¾ö¶¨ÔÙÖØÍ·µ½Î²ºÃºÃ±àÒëһϣ¬Ê×ÏÈÏÂÔØlinux kernel£¬ÔÙÓÃsecureCRTÉÏ´«µ½Ubuntu 8. ......

linuxµÄttyÉ豸

      ÖÕ¶ËÊÇÒ»ÖÖ×Ö·ûÐÍÉ豸£¬ËüÓжàÖÖÀàÐÍ£¬Í¨³£Ê¹ÓÃttyÀ´¼ò³Æ¸÷ÖÖÀàÐ͵ÄÖÕ¶ËÉ豸¡£ttyÊÇTeletypeµÄËõд£¬TeletypeÊÇ×îÔç³öÏÖµÄÒ»ÖÖÖÕ¶ËÉ豸£¬ºÜÏóµç´«´ò×Ö»ú£¬ÊÇÓÉTeletype¹«Ë¾Éú²úµÄ¡£É豸Ãû·ÅÔÚÌØÊâÎļþĿ¼/dev/Ï£¬ÖÕ¶ËÌØÊâÉ豸ÎļþÒ»°ãÓÐÒÔϼ¸ÖÖ£º
1£¬´®Ðж˿ÚÖÕ¶Ë£¨/dev/ttySn£©£º´®Ðж ......

LinuxÖÐselectº¯Êýѧϰ¼°ÊµÀý±Ê¼Ç

UnixÖеĺ¯ÊýselectºÍpollÓÃÀ´£¬Ö§³ÖUnixÖÐI/O¸´ÓõŦÄÜ£¬ÔÚUnixÖÐI/OÄ£ÐÍ¿ÉÒÔ·ÖΪÒÔÒ»¼¸ÖÖ£º
£¨1£©×èÈûI/O
£¨2£©·Ç×èÈûI/O
£¨3£©I/O¸´Óã¨selectºÍpoll£©
£¨4£©ÐźÅÇý¶¯I/O(SIGIO)
£¨5£©Òì²½I/O
   ÆäÖУ¬ÏÖÔڱȽÏÁ÷ÐеÄI/OÄ£ÐÍÊÇ×èÈûI/OÄ£ÐÍ.×èÈûI/OÊǵ±Ó¦ÓóÌÐòºÍÄں˽»»»Êý¾Ýʱ£¬ÓÉÓÚÄں˻¹Ã»ÓÐ×¼±¸ºÃ ......

linuxÏÂÖ´ÐÐphpÎļþ·¢ÏÖCould not open input file

ÔÚlinuxÏÂͨ¹ýsvn¸üÐÂÁËÒ»¸öphpÎļþ£¬Ä¿µÄÊÇÏëͨ¹ýÖ´ÐÐÕâ¸öÎļþÀ´¶ÁÊý¾Ý²åÈëµ½Êý¾Ý¿â¡£ÔÚÆäÖеļ¸Ì¨Ö´ÐÐûÓÐÎÊÌ⣬ÆäÖÐһ̨¾Í·¢ÏÖÁËCould not open input fileÕâ¸ö´íÎ󣬺óÀ´²éÕÒ×ÊÁϲŷ¢ÏÖÔ­À´ÊÇÎļþ¸ñʽµÄÎÊÌ⣬³ö´íʱÎļþ¸ñʽÊÇdos£¬¿ÉÒÔÔÚviÖÐÓÃ:set ffÀ´²é¿´£¬Èç¹ûÊÇdos¸ñʽ£¬ÄÇôÔòÓÃ:set ff=unixÀ´ÉèÖÃеĸñʽ£¬ÕâÑ ......

Linuxѧϰ£¨¶þ£© ¹²Ïí¿âµÄ°²×°

°²×°³ÌÐòËùÐèÒªµÄ¹²Ïí¿âʱÐèҪעÒâµÄÎÊÌâ¡£
ÆðÒò£º°²×°libsqlite3.so.0 ºó£¬Ê¹ÓÃldd test ʱ£¬È´ÕÒ²»µ½¸Ã¿âÎļþ¡£
        ÔÚʹÓÃcpptest¶ÔÔ­³ÌÐòÔËÐе¥Ôª²âÊÔʱ£¬·¢ÏÖ´íÎ󣬼´ÕÒ²»µ½¿âÎļþ¡£
°²×°Íêlibsqlite3.so.0ºó£¬ÆäÊÇ´æ´¢ÔÚusr/local/libµÄ¡£ËùÒÔÎÊÌâÔÚÓÚ£¬linuxϵÄ×°ÔØ³ÌÐò ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ