linuxÖеĶ¯Ì¬¿âºÍ¾²Ì¬¿â
1.¸ÅÄîºÍÇø±ð£º
¾²Ì¬¿â¾ÍÊÇÔÚ±àÒë¹ý³ÌÖÐһЩĿ±êÎļþµÄ¼¯ºÏ¡£¾²Ì¬¿âÔÚ³ÌÐòÁ´½ÓµÄʱºòʹÓã¬Á´½ÓÆ÷»á½«³ÌÐòÖÐʹÓõ½º¯ÊýµÄ´úÂë´Ó¿âÎļþÖп½±´µ½Ó¦ÓóÌÐòÖС£Ò»µ©Á´½ÓÍê³É£¬ÔÚÖ´ÐгÌÐòµÄʱºò¾Í²»ÐèÒª¾²Ì¬¿âÁË¡£
ÓÉÓÚÿ¸öʹÓþ²Ì¬¿âµÄÓ¦ÓóÌÐò¶¼ÐèÒª¿½±´ËùÓú¯ÊýµÄ´úÂ룬ËùÒÔ¾²Ì¬Á´½ÓµÄÎļþ»á±È½Ï´ó¡£
Ïà¶ÔÓÚ¾²Ì¬º¯Êý¿â£¬¶¯Ì¬º¯Êý¿âÔÚ±àÒëµÄʱºò²¢Ã»Óб»±àÒë½øÄ¿±ê´úÂëÖУ¬¶øÖ»ÊÇ×÷Щ±ê¼Ç¡£È»ºóÔÚ³ÌÐò¿ªÊ¼Æô¶¯ÔËÐеÄʱºò£¬¶¯Ì¬µØ¼ÓÔØËùÐèÄ£¿é£¬Òò´Ë¶¯Ì¬º¯Êý¿âËù²úÉúµÄ¿ÉÖ´ÐÐÎļþ±È½ÏС¡£ÓÉÓÚº¯Êý¿âûÓб»ÕûºÏ½øÄãµÄ³ÌÐò£¬¶øÊdzÌÐòÔËÐÐʱ¶¯Ì¬µÄÉêÇë²¢µ÷Óã¬ËùÒÔ³ÌÐòµÄÔËÐл·¾³ÖбØÐëÌṩÏàÓ¦µÄ¿â¡£¶¯Ì¬º¯Êý¿âµÄ¸Ä±ä²¢²»Ó°ÏìÄãµÄ³ÌÐò£¬ËùÒÔ¶¯Ì¬º¯Êý¿âµÄÉý¼¶±È½Ï·½±ã¡£
2.ÃüÃû£º
¾²Ì¬¿âµÄÃû×ÖÒ»°ãΪlibxxxx.a£¬ÆäÖÐxxxxÊǸÃlibµÄÃû³Æ¡£
¶¯Ì¬¿âµÄÃû×ÖÒ»°ãΪlibxxxx.so.major.minor£¬xxxxÊǸÃlibµÄÃû³Æ£¬majorÊÇÖ÷°æ±¾ºÅ£¬minorÊǸ±°æ±¾ºÅ¡£°æ±¾ºÅÒ²¿ÉÒÔûÓУ¬Ò»°ã¶¼»á½¨Á¢¸öûÓа汾ºÅµÄÈíÁ¬½ÓÎļþÁ´½Óµ½È«ÃûµÄ¿âÎļþ¡£
3.´´½¨£º
ÎÞÂÛ¾²Ì¬¿â»¹ÊǶ¯Ì¬¿â£¬´´½¨¶¼·ÖΪÁ½²½£¬µÚÒ»²½´´½¨Ä¿±êÎļþ£¬µÚ¶þ²½Éú²ú¿â¡£
1).¾²Ì¬¿âµÄ´´½¨£º
#gcc -c test.c -o test.o
#ar rcs libtest.a test.o
Ãû×ÖΪlibtest.aµÄ¾²Ì¬¿â¾ÍÉú²úÁË£¬ÆäÖÐÑ¡Ï
r ±íÃ÷½«Ä£¿é¼ÓÈëµ½¾²Ì¬¿âÖУ»
c ±íʾ´´½¨¾²Ì¬¿â£»
s ±íʾÉú²úË÷Òý£»
»¹Óиü¶àÑ¡ÏîÏñÔö¼Ó¡¢É¾³ý¿âÖеÄÄ¿±êÎļþ£¬°üÀ¨½«¾²Ì¬¿â½â°üµÈ¿ÉÒÔͨ¹ýmanÀ´»ñµÃ¡£
2).¶¯Ì¬¿âµÄ´´½¨£º
#gcc -fPIC -c test.c -o test.c
#gcc --share test.o -o libtest.so
-fPIC ΪÁË¿çƽ̨
4.ʹÓãº
±àÒëÁ´½ÓÄ¿±ê³ÌÐòµÄ·½·¨ÊÇÒ»ÑùµÄ£º
#gcc main.c -L. -ltest -o main
-L.Ö¸¶¨ÏÖÔÚ±¾Ä¿Â¼ÏÂËÑË÷¿â£¬Èç¹ûûÓУ¬»áµ½ÏµÍ³Ä¬ÈϵÄĿ¼ÏÂËÑË÷£¬Ò»°ãΪ/lib¡¢/usr/libÏ¡£
¶ÔÓÚ¾²Ì¬¿â£¬Õâ¸ö²½ÖèÖ®ºó¾Í¿ÉÒÔ½«libtest.a¿âɾµô£¬ÒòΪËüÒѾ±»±àÒë½øÁËÄ¿±ê³ÌÐò£¬²»ÔÙÐèÒªËüÁË¡£
¶ø¶ÔÓÚ¶¯Ì¬¿â£¬libtest.so¿âÖ»ÊÇÔÚÄ¿±ê³ÌÐòÀï×öÁ˱ê¼Ç£¬ÔÚÔËÐгÌÐòʱ²Å»á¶¯Ì¬¼ÓÔØ£¬ÄÇô´ÓÄļÓÔØÄØ£¿¼ÓÔØĿ¼»áÓÉ/etc/ld.so.confÀ´Ö¸¶¨£¬Ò»°ãĬÈÏÊÇ/lib¡¢/usr/lib£¬ËùÒÔÒªÏëÈö¯Ì¬¿â˳Àû¼ÓÔØ£¬Äã¿ÉÒÔ½«¿âÎļþcopyµ½ÉÏÃæµÄÁ½¸öĿ¼Ï£¬»òÕßÉèÖÃexport LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/XXX/YYY£¬ºóÃæΪÄã×Ô¼
Ïà¹ØÎĵµ£º
1. ѧ»áд¼òµ¥µÄmakefile
2. ±àһЩӦÓÃ
³ÌÐò
£¬¿ÉÒÔÓÃmakefileÅÜÆðÀ´
3. ѧ»áдÇý¶¯
µÄmakefile
4. дһ¼òµ¥charÇý¶¯£¬makefile±àÒëͨ¹ý£¬¿ÉÒÔinsmod£¬ lsmod£¬ rmmod. ÔÚÇý¶¯µÄinitº¯ÊýÀï´òÓ¡hello world£¬insmodºóÓ¦¸ÃÄܹ»Í¨¹ýdmesg¿´µ½Êä³ö
¡£
5. дһÍêÕûÇý¶¯£¬ ¼ÓÉÏread£¬ write£¬ ioctl£¬ pollingµÈ¸ ......
Ò» ¡¢LinuxÎļþ½á¹¹
¡¡¡¡Îļþ½á¹¹ÊÇÎļþ´æ·ÅÔÚ´ÅÅ̵ȴæÖüÉ豸ÉϵÄ×éÖ¯·½·¨¡£Ö÷ÒªÌåÏÖÔÚ¶ÔÎļþºÍĿ¼µÄ×éÖ¯ÉÏ¡£
¡¡¡¡Ä¿Â¼ÌṩÁ˹ÜÀíÎļþµÄÒ»¸ö·½±ã¶øÓÐЧµÄ;¾¶¡£
¡¡¡¡LinuxʹÓñê×¼µÄĿ¼½á¹¹£¬ÔÚ°²×°µÄʱºò£¬°²×°³ÌÐò¾ÍÒѾΪÓû§´´½¨ÁËÎļþϵͳºÍÍêÕû¶ø¹Ì¶¨µÄĿ¼×é³ÉÐÎʽ£¬²¢Ö¸¶¨ÁËÿ¸öĿ¼µÄ×÷ÓúÍÆäÖеÄÎļþ ......
ÔÎĵØÖ·£ºhttp://www.xxlinux.com/linux/article/development/embed/20080227/14047.html
LinuxºÍuClinux
LinuxÕýÖð½¥µØÓ¦ÓÃÓÚǶÈëʽÉ豸£¬uClinuxÕýÊÇÔÚÕâÖÖ·ÕΧϲúÉúµÄ¡£uClinux¾ÍÊÇMicro-Control-Linux£¬ËüÒ²ÊÇÒ»¸ö ......
LinuxϵĶδíÎó²úÉúµÄÔÒò¼°µ÷ÊÔ·½·¨
ĬÈÏ·ÖÀà 2008-08-26 13:37 ÔĶÁ28 ÆÀÂÛ0
×ֺţº ´ó´ó ÖÐÖРСС
¼ò¶øÑÔÖ®,²úÉú¶Î´íÎó¾ÍÊÇ·ÃÎÊÁË´íÎóµÄÄÚ´æ¶Î£¬Ò»°ãÊÇÄãûÓÐȨÏÞ£¬»òÕ߸ù±¾¾Í²»´æÔÚ¶ÔÓ¦µÄÎïÀíÄÚ´æ,ÓÈÆä³£¼ûµÄÊÇ·ÃÎÊ0µØÖ·.
Ò»°ãÀ´Ëµ,¶Î´íÎó¾ÍÊÇÖ¸· ......
linuxÏÂÏë½âѹrarÎļþ ±ØÐë°²×°Èí¼þ£¬ÎÒʹÓõ½ÊÇrarlinux
ÏÂÃæÊÇÏÂÔصØÖ·
rarlinux¹Ù·½ÍøÕ¾ÏÂÔصØÖ·
http://www.rarsoft.com/download.htm
°²×° ......