Linux¾²Ì¬¿âºÍ¶¯Ì¬¿â
¿â´Ó±¾ÖÊÉÏÀ´ËµÊÇÒ»ÖÖ¿ÉÖ´ÐдúÂëµÄ¶þ½øÖƸñʽ£¬¿ÉÒÔ±»ÔØÈëÄÚ´æÖÐÖ´ÐС£¿â·Ö¾²Ì¬¿âºÍ¶¯Ì¬¿âÁ½ÖÖ¡£
¾²Ì¬¿âºÍ¶¯Ì¬¿âµÄÇø±ð
1. ¾²Ì¬º¯Êý¿â
ÕâÀà¿âµÄÃû×ÖÒ»°ãÊÇlibxxx.a£»ÀûÓþ²Ì¬º¯Êý¿â±àÒë³ÉµÄÎļþ±È½Ï´ó£¬ÒòΪÕû¸ö º¯Êý¿âµÄËùÓÐÊý¾Ý¶¼»á±»ÕûºÏ½øÄ¿±ê´úÂëÖУ¬ËûµÄÓŵã¾ÍÏÔ¶øÒ×¼ûÁË£¬¼´±àÒëºóµÄÖ´ÐгÌÐò²»ÐèÒªÍⲿµÄº¯Êý¿âÖ§³Ö£¬ÒòΪËùÓÐʹÓõĺ¯Êý¶¼ÒѾ±»±àÒë½øÈ¥ÁË¡£µ±È»ÕâÒ²»á³ÉΪËûµÄȱµã£¬ÒòΪÈç¹û¾²Ì¬º¯Êý¿â¸Ä±äÁË£¬ÄÇôÄãµÄ³ÌÐò±ØÐëÖØÐ±àÒë¡£
2. ¶¯Ì¬º¯Êý¿â
ÕâÀà¿âµÄÃû×ÖÒ»°ãÊÇlibxxx.so;Ïà¶ÔÓÚ¾²Ì¬º¯Êý¿â£¬¶¯Ì¬º¯Êý¿âÔÚ±àÒëµÄʱºò ²¢Ã»Óб»±àÒë½øÄ¿±ê´úÂëÖУ¬ÄãµÄ³ÌÐòÖ´Ðе½Ïà¹Øº¯Êýʱ²Åµ÷Óøú¯Êý¿âÀïµÄÏàÓ¦º¯Êý£¬Òò´Ë¶¯Ì¬º¯Êý¿âËù²úÉúµÄ¿ÉÖ´ÐÐÎļþ±È½ÏС¡£ÓÉÓÚº¯Êý¿âûÓб»ÕûºÏ½øÄãµÄ³ÌÐò£¬¶øÊdzÌÐòÔËÐÐʱ¶¯Ì¬µÄÉêÇë²¢µ÷Óã¬ËùÒÔ³ÌÐòµÄÔËÐл·¾³ÖбØÐëÌṩÏàÓ¦µÄ¿â¡£¶¯Ì¬º¯Êý¿âµÄ¸Ä±ä²¢²»Ó°ÏìÄãµÄ³ÌÐò£¬ËùÒÔ¶¯Ì¬º¯Êý¿âµÄÉý¼¶±È½Ï·½±ã¡£
linuxϵͳÓм¸¸öÖØÒªµÄĿ¼´æ·ÅÏàÓ¦µÄº¯Êý¿â£¬Èç/lib /usr/lib¡£
¾²Ì¬¿âµÄʹÓÃ
¾²Ì¬¿âµÄ²Ù×÷¹¤¾ß£ºgccºÍar ÃüÁî¡£
±àд¼°Ê¹Óþ²Ì¬¿â
(1)Éè¼Æ¿âÔ´Âë pr1.c ºÍ pr2.c
[root@billstone make_lib]# cat pr1.c
void print1()
{
printf("This is the first lib src!\n");
}
[root@billstone make_lib]# cat pr2.c
void print2()
{
printf("This is the second src lib!\n");
}
(2) ±àÒë.c Îļþ
[bill@billstone make_lib]$ cc -O -c pr1.c pr2.c
[bill@billstone make_lib]$ ls -l pr*.o
-rw-rw-r-- 1 bill bill 804 4 ÔÂ 15 11:11 pr1.o
-rw-rw-r-- 1 bill &nbs
Ïà¹ØÎĵµ£º
´ÓÕâ¸ö×ܽáÕýʽ¿ªÊ¼ÁËÎÒµÄÇý¶¯Ö®Âã¬ÐÄÇé²»ÃâÓе㼤¶¯£¬¾¡¹ÜÏÖÔÚ¶ÔÇý¶¯µÄ±àд»¹ºÜÄ£ºý£¬µ«»¹ÊÇÓмÍÄîÒâÒåµÄ……
¿ª·¢Æ½Ì¨£º
ÐéÄâ»úÏÂRedHat9£¬ÄÚºË2.4.20.8
½»²æ±àÒë±àÒëÆ÷£ºÌìǶ¹«Ë¾ÌṩµÄarm-linux-gcc 4.3.3
ÄÚºËÊ÷£º/h ......
typedef void (*lpFunction) ();//¶¨ÒåÒ»¸öÎÞ²ÎÊý£¬ÎÞ·µ»ØÀàÐ͵ĺ¯ÊýÖ¸ÕëÀàÐÍ
//¶¨ÒåÒ»¸öº¯ÊýÖ¸Õ룬ָÏòcpuÆô¶¯ºóËùÖ´ÐеĵÚÒ»ÌõÖ¸ÁîµÄλÖÃ
lpFunction lpReset = (lpFunction)0xF000FFF0;
lpReset();//µ÷Óú¯Êý
MMUÍ£¹©ÐéÄâµØÖ·ºÍÎïÀíµØÖ·µÄÓ³Éä¡¢ÄÚ´æ·ÃÎÊȨÏÞ±£»¤ºÍCache»º´æ¿ØÖƵÈÓ²¼þÖ§³Ö¡£²Ù×÷ϵͳÄں˽èÖ ......
Ê×ÏÈ£¬´Óhttp://java.sun.comÖÐÏÂÔØjdk,Îҵİ汾ÊÇjdk1.6.0_20
È»ºó£¬ÖÕ¶ËÊäÈë
´úÂë:
sudo chmod u+x /£¨Â·¾¶Ãû³Æ£©/jdk1.6.0_12.bin
ÐÞ¸ÄbinÎļþȨÏÞ£¬Ê¹Æä¿ÉÖ´ÐÐ
È»ºó£¬Ö´ÐÐ
´úÂë:
sudo £¨Â·¾¶Ãû³Æ£©/jdk1.6.0_20.bin
½«»á³öÏÖ×ÖÄ»£¬³ÖÐø°´»Ø³µ¼ü£¬Ö±ÖÁÆÁÄ»ÏÔʾҪÇóÊäÈë yes/no£¬´ËʱÊäÈëy»Ø³µ£¬½«»á°Ñjdk½âѹµ½Î ......
1.Ê×ÏÈldd²»ÊÇÒ»¸ö¿ÉÖ´ÐгÌÐò£¬¶øÖ»ÊÇÒ»¸öshell½Å±¾
2¡¢lddÄܹ»ÏÔʾ¿ÉÖ´ÐÐÄ£¿éµÄdependency£¬ÆäÔÀíÊÇͨ¹ýÉèÖÃһϵÁеĻ·¾³±äÁ¿£¬ÈçÏ£ºLD_TRACE_LOADED_OBJECTS¡¢LD_WARN¡¢LD_BIND_NOW¡¢LD_LIBRARY_VERSION¡¢
LD_VERBOSEµÈ¡£µ±LD_TRACE_LOADED_OBJECTS»·¾³±äÁ¿²»Îª¿Õʱ£¬ÈκοÉÖ´ÐгÌÐòÔÚÔËÐÐʱ£¬Ëü¶¼»áÖ»ÏÔʾģ ......
¶Ô±È£ºLinuxºÍWindowsϵͳÏ̼߳äµÄÇø±ð
ÊìϤWIN32±à³ÌµÄÈËÒ»¶¨ÖªµÀ£¬WIN32µÄ½ø³Ì¹ÜÀí·½Ê½ÓëLinuxÉÏÓÐןܴóÇø±ð£¬ÔÚUNIXÀֻÓнø³ÌµÄ¸ÅÄµ«ÔÚWIN32ÀïÈ´»¹ÓÐÒ»¸ö"Ïß³Ì"µÄ¸ÅÄÄÇôLinuxºÍWIN32ÔÚÕâÀ﾿¾¹ÓÐ×ÅÊ²Ã´Çø±ðÄØ£¿
WIN32ÀïµÄ½ø³Ì/Ïß³ÌÊǼ̳Ð×ÔOS/2µÄ¡£ÔÚWIN32À"½ø³Ì"ÊÇÖ¸Ò»¸ö³ÌÐò£¬¶ø"Ïß³Ì"ÊÇÒ ......