´O¤J¦¡Linux¨t²Î¶}µo¡G°ò¤_Yocto Project ( ²Åé ¦r) |
§@ªÌ¡G¡e¬ü¡f¾|¹D¤Ò¡PJ. ´µ¯S¹p¤Ò¡]Rudolf J. Streif¡^ | Ãþ§O¡G1. -> §@·~¨t²Î -> Linux |
ĶªÌ¡G |
¥Xª©ªÀ¡G¾÷±ñ¤u·~¥Xª©ªÀ | 3dWoo®Ñ¸¹¡G 49548 ¸ß°Ý®ÑÄy½Ð»¡¥X¦¹®Ñ¸¹¡I¡i¯Ê®Ñ¡j NT°â»ù¡G 495 ¤¸ |
¥Xª©¤é¡G7/1/2018 |
¶¼Æ¡G350 |
¥úºÐ¼Æ¡G0 |
|
¯¸ªø±ÀÂË¡G |
¦L¨ê¡G¶Â¥Õ¦L¨ê | »y¨t¡G ( ²Åé ª© ) |
|
¥[¤JÁʪ«¨® ¢x¥[¨ì§Úªº³Ì·R (½Ð¥ýµn¤J·|û) |
ISBN¡G9787111603825 |
§@ªÌ§Ç¡@|¡@ĶªÌ§Ç¡@|¡@«e¨¥¡@|¡@¤º®e²¤¶¡@|¡@¥Ø¿ý¡@|¡@§Ç |
(²Åé®Ñ¤W©Òz¤§¤U¸ü³sµ²¯Ó®É¶O¥\, ®¤¤£¾A¥Î¦b¥xÆW, YŪªÌ»Ýn½Ð¦Û¦æ¹Á¸Õ, ®¤¤£«OÃÒ) |
§@ªÌ§Ç¡G |
ĶªÌ§Ç¡G |
«e¨¥¡G´¼¯à®a©~¡B´¼¯à¨T¨®¡B´¼¯à¤â¾÷¡B´¼¯à¹qµø¡B´¼¯àùڷž¹¡B´¼¯à¹q¿O¡B´¼¯à¤âªí¡B´¼¯à¬~¦ç¾÷¡B´¼¯à¯M¤z¾÷¡B´¼¯à¦B½c¥H¤Î´¼¯àÄx²y¡CÅwªï¨Ó¨ì´¼¯à¸Uª«ªº«i´±·s¥@¬É¡C
¦b¤é±`¥Í¬¡¤¤¡A§ÚÌIJ¤Î©M¥æ¤¬ªº´X¥G©Ò¦³ªF¦è¤¤³£¦³´O¤J¦¡pºâ¾÷¡A¥¦ªº¼@¼W¡A¨Ï±o´O¤J¦¡¨t²Î¤uµ{©M´O¤J¦¡³n¥ó¶}µo¨ü¨ì¤FÆf¥Ø¡C´O¤J¦¡¨t²ÎÁôÂæb¨ä¥Î¤áªºª½±µµø½u¤§¥~¡A¥¦Ì¯Ê¤Ö¨º¨Ç±a¦³¯BµØ¥Î¤á¬É±ªººôµ¸À³¥Î©Ò¨ã¦³ªº§l¤Þ¤O¡A¤]¯Ê¤Ö¨º¨Ç±a¦³°Êµe©M¹G¯u¹Ï¹³ªºpºâ¾÷´åÀ¸©Ò¨ã¦³ªº»Å»Åªº·Pı¡C²@¤£©_©Çªº¬O¡Apºâ¾÷¬ì¾Ç±M·~ªº¾Ç¥Í©M³n¥ó¶}µoªÌ´X¥G¤£·|§â´O¤J¦¡³n¥ó¤uµ{·í¦¨¥L̪º²Ä¤@¾·~¿ï¾Ü¡CµM¦Ó¡A¡§´¼¯à¸Uª«²©R¡¨©Mª«Ápºô¥¿¦b±À°Ê¤H̹墨¨Ç¯à°÷¾ô±µµw¥ó©M³n¥ó¥@¬Éªº±M·~¤H¤hªº»Ý¨D¡C¨º¨Ç¨Ï¥Î¹q¸ôì²z¹Ï»y¨¥©M½sµ{»y¨¥ªº±M®a±N¨ü¨ì¶±¥Dªº°l±·¡C
¹ï¤_Ãz¬µ¦¡¼W¦hªº´O¤J¦¡À³¥Î¨Ó»¡¡ALinux¤w¸g¦¨¬°²Ä¤@¿ï¾Ü¡C¹ï¤_³oºØ¿ï¾Ü¡A¦³«Ü¦h«ê·íªº²z¥Ñ¡C§Ú̱N¦b±µ¤U¨Óªº³¹¸`¤¤¸Ô²ÓÄÄz³o¨Ç²z¥Ñ¡C¸g¾ú¤F§@¬°ªA°È¤_¦UºØ¦æ·~ªº´O¤J¦¡³n¥ó¶}µoªÌªº®Èµ{¡A§Ú³q¹LÁ}¨¯ªº¤è¦¡¾Ç²ß¤F´O¤J¦¡¨t²ÎªºLinux¡C¹ï´X¥G¥ô¦ó½sµ{»y¨¥¨Ó»¡¡A³£¤£¯Ê¤ÖÀu¨qªº¶}µo¤u¨ã¡Cµ´¤j³¡¤À¥Î¤_Linuxªº®w©MÀ³¥Î³£·|¥Ñ¤_¥¦Ìªº¤u¨ã¤Æ¦Ó³Q²³æì¥Í¦aºc«Ø¡C¨Ï¥Î¤º®Ö¦Û¦³ªººc«Ø¨t²Î¡A§Y¨Ï±qÀY¶}©lºc«ØLinux¤º®Ö´X¥G¤]¬O¤@¥ó»´¦Ó©öÁ|ªº¨Æ¡CµM¦Ó¡A·í»Ýn§â©Ò¦³ªºªF¦è¾ã¦X¶i¥i±Ò°Êªº¨t²Î®É¡A¿ï¾Ü´N«Ü¤Ö¤F¡C
³q¹L´£¨Ñ¤@®M¥þ±ªº¡B¥HOpenEmbeddedºc«Ø¨t²Î¬°¤¤¤ßªº¶°¦¨¤Æ¤u¨ã¡AYocto¶µ¥ØÀ±¸É¤F³oºØÂE·¾¡C¦b¤j¬ù´XÓ¤p®É¤º¹ê²{±q·½¥N½X¨ì¥i±Ò°Êªº¨t²Î¡X¡X§Ú§Æ±æ¦b§Ú¶}©l¨Ï¥Î´O¤J¦¡Linuxªº®ÉÔ·|¦³³o¼Ëªº°ø¨×¡C
¥»®Ñ©w¦ì
¶°¦¨¦hÓ¤£¦Pªº¥²n¨BÆJ¨Ó±qÀY³Ð«Ø§¹¥þ¥i¥ÎªºLinux¾Þ§@¨t²Î´Ìªººc«Ø¨t²Î¬O¬Û·í´_Âøªº¡C¥»®Ñ±Mª`¤_ºc«Ø¨t²Î¥»¨¥H¤Î¦p¦ó¦³®Ä¨Ï¥Î¥¦¨Óºc«Ø©w¨îªºLinuxµo¦æª©¡C¥»®Ñ¤£¬OÃö¤_´O¤J¦¡Linuxªº±Ðµ{¡CÁöµM²Ä6³¹¸ÑÄÀ¤FLinux¨t²Î¬[ºcªº°ò¦¡]¦]¬°¸Ó«H®§¹ï¤_²z¸Ñºc«Ø¨t²Î¦p¦ó²Õ¦X¦hÓ¤£¦Pªº²Õ¥ó¦¨¬°¥i¹B¦æªº¨t²Î¬O¥²nªº¡^¡A¦ý¬O´N´O¤J¦¡Linux¥»¨¦Ó¨¥¡A¤£·|²`¤J¥¦ªº²Ó¸`¡C¦pªG§A¬O´O¤J¦¡Linux¶}µo·s¤â¡A¨º¤\±j¯P±ÀÂËChristopher Hallinanªº¦n®Ñ¡mEmbedded Linux Primer¡n¡A¸Ó®Ñ»P¥»®Ñ¬O¦P¤@¨t¦CÂO®Ñ¡]Prentice Hall¶}·½³n¥ó¶}µo¨t¦C¡^¡C
¦b¥»®Ñ¤¤¡A§A±N·|¾Ç²ßOpenEmbeddedºc«Ø¨t²Î¦p¦ó¤u§@¡B¦p¦ó½s¼gµæÃС]recipe¡^¨Óºc«Ø§A¦Û¤vªº³n¥ó²Õ¥ó¡B¦p¦ó¨Ï¥Î©M³Ð«ØYocto¶µ¥ØªO¤ä«ù¥]¡]Board Support Package¡ABSP¡^¨Ó¤ä«ù¤£¦Pªºµw¥ó¥»O¥H¤Î¦p¦ó½Õ¸Õºc«Ø¥¢±Ñ¡C§AÁÙ±N¾Ç²ß¦p¦ó¬°À³¥Î¶}µoºc«Ø³n¥ó¶} µo¥]¡A¥H¤Î¦p¦ó¬°¤FµLÁ_ªº©¹ªð¶}µo¡]round-trip development¡^¦Ó§â³o¨Ç¶}µo¥]©M¬y¦æªºEclipse¶°¦¨¶}µoÀô¹Ò¡]Integrated Development Environment¡AIDE¡^¶°¦¨°_¨Ó¡C
¥»®ÑŪªÌ
¥»®Ñ±¦V¨º¨Ç¨ã¦³Linux¹ê½îª¾ÃѪº³n¥ó¶}µoªÌ©Mµ{§Çû¡C°²³]§A¼ô±xLinux©R¥O¦æ¡A¥i¥H¨Ï¥Î¨å«¬ªº¤u¨ã¡]¨Ò¦pMake©MC/C++½sĶ¾¹¡^ ¦bLinux¨t²Î¤Wºc«Øµ{§Ç¡AÁÙ¥i¥H¾\Ū©M²z¸Ñ°ò¥»ªºshell¸}¥»¡C
ºc«Ø¨t²Î¬O§¹¥þ¥ÎPython½s¼gªº¡C§Y¨Ï§A¤£¬OPython±M®a¤]¥i¥H¨Ï¥Î¥¦¡A¦}²z¸Ñ¥¦¦p¦ó¤u§@¡A¦ý¬O¨ã³Æ¤@¨Ç®Ö¤ßªºPythonª¾ÃѤ@©w¬O ¦³§Qªº¡C
¥»®Ñ¤º®e
²Ä1³¹¹ïªö¥Î´O¤J¦¡¨t²ÎªºLinux¶i¦æ²n¤¶²Ð¡A¬°´O¤J¦¡Linuxªº§Î¶Õ©M³Ð«Ø©w¨î´O¤J¦¡µo¦æª©ªº¬D¾Ôªº·§Äý³þ©w¤F°ò¦¡C
²Ä2³¹³q¹L¥Îºc«Ø¨t²Î±Ò°ÊLinux¾Þ§@¨t²Î´Ìªºº¦¸ºc«Ø¨Ó¤¶²ÐYocto¶µ¥Ø¡A¦P®É¤]µ¹¥X¤FYocto¶µ¥Ø¨t¦C©MYocto¶µ¥Ø¾ú¥vªº·§Äý¡C
²Ä3³¹¸ÑÄÀ¤Fºc«Ø¨t²Îªº°ò¦¡B¤u§@¬y©M¬[ºc¡C
²Ä4³¹¸ÑªR¤FBitBake¡X¡X³B¤_OpenEmbeddedºc«Ø¨t²Î®Ö¤ßªººc«Ø¤ÞÀº¡C¨ä¤¤¸ÑÄÀ¤FµæÃС]recipe¡^ªº¤¸¼Æ¾Ú¡]metadata¡^·§©À¡BÃþ¡B °t¸m¤å¥ó¤Î¨ä»yªk¡CBitBake¤è¦¡ªº¡§Hello World¡¨¶µ¥Ø»¡©ú¤Fºc«Ø¤u§@¬y¡C³q¹L´£¨Ñªº«H®§¡A§A·|Àò±o¥Î¤_²z¸Ñ©Ò´£¨ÑªºµæÃЩM½s¼g¦Û¤vªºµæÃЪº¥²nª¾ÃÑ¡C
²Ä5³¹¤¶²Ð¤F¥i¥Î¤_¹ïºc«Ø°ÝÃD¶i¦æ¬G»Ù±Æ°£ªº¤u¨ã©M¾÷¨î¡A¦}¥B´£¨Ñ¤F¦p¦ó¦³®Ä¨Ï¥Î³o¨Ç¤u¨ãªº¹ê¥Î«Øij¡C
²Ä6³¹´£¨Ñ¤FLinux¾Þ§@¨t²Î´Ìªº°ò¦¡A¦}¸ÑÄÀ¤F¤£¦P²Õ¥ó¬O¦p¦ó¤À¼hªº¡C¥t¥~ÁÙ°Q½×¤F¤º®ÖªÅ¶¡©M¥Î¤áªÅ¶¡ªº·§©À¥H¤ÎÀ³¥Îµ{§Ç¦p¦ó³q¹L¥Ñ¼Ð·ÇC®w´£¨Ñªº¨t²Î½Õ¥Î¨Ó©MLinux¤º®Ö¥æ¤¬¡C ²Ä7³¹²ÓPÁ¿¸Ñ¤F¦p¦ó¨Ï¥ÎYocto¶µ¥Ø³Ð«Ø©w¨î¤ÆªºLinuxµo¦æª©¡C¥¦¥Hºc«Ø¨t²Î¥i¥ÎªºLinuxµo¦æª©ÂŹϥH¤Î¦p¦ó©w¨î¥¦ÌªºÂ²n¤¶²Ð §@¬°¶}©l¡CµM¦Zºt¥Ü¤F¦p¦ó¨Ï¥Îºc«Ø¨t²Î¤u¨ã§¹¥þ±qÀY³Ð«ØLinuxµo¦æª©¡CŪ§¹¥»³¹¥H¦Z¡A§A±Nª¾¹D¦p¦óºc«Ø¦Û¤vªº¾Þ§@¨t²ÎÃè¹³¡C
²Ä8³¹¸ÑÄÀ¤FBitBakeµæÃÐ¥H¤Î¦p¦ó½s¼g¥¦Ì¨Ó¥Îºc«Ø¨t²Îºc«Ø¦Û¤vªº³n¥ó¥]¡C³o¤@³¹´£¨Ñ¤F§A¥i¥H¹Á¸Õªº¦UºØ¯u¹ê¥@¬ÉªºµæÃШҤl¡C
²Ä9³¹¥J²Ó¬ã¨s¤F¥ÎOpenEmbeddedºc«Ø¨t²Î¨Óºc«ØLinux¤º®Öªº²Ó¸`¡A¸ÑÄÀ¤Fºc«Ø¨t²Î¤u¨ã¦p¦ó»P¤º®Öªººc«ØÀô¹Ò¥æ¤¬¥H³]¸m¤º®Ö°t¸m©MÀ³¥Î¸É¤B¡C¥»³¹¥HÃö¤_ºc«Ø¨t²Î¦p¦ó³B²z¾ð¥~¡]out-of-tree¡^¤º®Ö¼Ò¶ô¥H¤Î¦X¦}ºc«Ø³]³Æ¾ð©Mºc«Ø¹Lµ{ªº°Q½×µ²§ô¡C
²Ä10³¹¤¶²Ð¤Fºc«Ø¨t²Î¦p¦ó¤ä«ù°w¹ï¤£¦Pµw¥óªººc«Ø¡X¡X¤]´N¬O»¡¡A¬°¤£¦PCPU¬[ºc©M¨t²Îºc«Ø¡C¦b¤¶²Ð¤FYocto¶µ¥ØªO¤ä«ù¥]ªº·§©À¥H¦Z¡A¥»³¹²ÓPÁ¿¸Ñ¤F¦p¦ó¨Ï¥ÎªO¤ä«ù¥]ºc«Ø¶µ¥Ø¡CµM¦Z¬ã¨s¤FYocto¶µ¥ØªO¤ä«ù¥]ªº¤º³¡ì²z¡A¦}¥Î¹ê»Úªº¨Ò¤l¨Ó¸ÑÄÀ¦p¦óºc«Ø¦Û¤vªºªO¤ä«ù¥]¡A§A¥i¥H±N³oÓ¨Ò¤l¨Ï¥Î¦b¯u¹êµw¥ó¤W¡C¥»³¹¥H¬°¤£¦Pµw¥ó°t¸m³Ð«Ø¥i±Ò°Ê¤¶½èÃè¹³µ²§ô¡C
²Ä11³¹´yz¤FYocto¶µ¥Ø¹ï¶}µoÀ³¥Îªº¤ä«ù¡A³o¨ÇÀ³¥Î³Q¥Î¦b³q¹Lºc«Ø¨t²Î³Ð«ØªºLinux¾Þ§@¨t²Î´Ì¤W¡C¨ä¤¤´£¨Ñ¤FÃö¤_¦p¦óºc«Ø¨º¨Ç¥]§t¥Î¤_©¹ªðÀ³¥Î¶}µoªº¥þ³¡¥²»Ý¤u¨ãªºÀ³¥Î¶}µo¤u¨ã¶°¡]Application Development Toolkit¡AADT¡^ªº¹ê»Ú¾Þ§@«ü«n¡C¥Ü¨Ò»¡©ú¤F¦p¦ó³q¹L©R¥O¦æ¤u¨ã©MEclipse¶°¦¨¶}µoÀô¹Ò¨Ó±NÀ³¥Î¶}µo¤u¨ã¶°¥Î¤_À³¥Î¶}µo¡C«ü«n·|¤@¨B¨B±Ð§A¦p¦ó»·µ{¹B¦æ©M½Õ¸Õ¯u¹êµw¥ó¥Ø¼Ð¤WªºÀ³¥Î¡C
²Ä12³¹°Q½×¤F¹ï¤_¶}·½³\¥i¦X³W©Êªºn¨D¥H¤ÎYocto¶µ¥Ø´£¨Ñªº¨º¨Ç¦³§U¤_º¡¨¬n¨Dªº¤u¨ã¡C
²Ä13³¹¤¶²Ð¤FÀ°§U§A§âYocto¶µ¥ØÂX®i¨ì¹Î¶¤ªº¤@¨Ç¤u¨ã¡CToaster¬O°ò¤_Webªº¹Ï§Î¥Î¤á¬É±¡A¥¦¥i¥Î¤_³Ð«Ø¯à±qWebÂsÄý¾¹»·µ{±±¨îªººc«Ø¨t²Î¡Cºc«Ø¾ú¥v¬O´£¨Ñ°lÂÜ©M¼fp¯à¤Oªº¤u¨ã¡C¨Ï¥Î·½Ãè¹³¡A§A¥i¥H¦@¨É·½¥]¨ÓÁקK«´_ªº¤U¸ü¡A¦}¬°²£«~¥æ¥I±±¨î·½ª©¥»¡C ³Ì¦Z¦ý¦}«D³Ì¤£«nªº¬O¡AAutobuilder¬°¦Û°Ê¤Æºc«Ø¡B½è¶q«OÃÒ©Mµo¥¬¹Lµ{´£¨Ñ¤F¶}½c§Y¥Îªº«ùÄòºc«Ø©M¶°¦¨®Ø¬[¡C´x´¤¤F¥»³¹ªºª¾ÃѦZ¡A§A¥i¥H¬°Yocto¶µ¥Ø¦³®Ä¦a³]¸m¹Î¶¤Àô¹Ò¡C
ªþ¿ý¥]¬A¬y¦æªº¶}·½³\¥i¡A¥H¤Î¥H¦r¥À±Æ§Çªººc«Ø¨t²Î¤¸¼Æ¾Ú¼h©M¾÷¾¹ªº°Ñ¦Ò¡C
°Ê¤â¾Þ§@¸gÅç
¥»®Ñªº¼¶¼g¥Øªº¬O´£¨ÑYocto¶µ¥Øªº¹ê»Ú°Ê¤â¾Þ§@¸gÅç¡C¦pªG¨Ì·Ó¦}¥B¹Á¸Õ¤F¬ÛÃö¥Ü¨Ò¡A¨º¤\§A·|¦¬Àò¨}¦h¡C¥¦Ì¤¤ªº¤j³¡¤À¥i¥H¨Ì¿à¹B¦æ³Ì·sLinuxµo¦æª©ªº°ò¤_x86ªº¤u§@¯¸¨Ó»´ªQ§¹¦¨¡]¸Ô²Óªº»Ý¨D·|¦b²Ä2³¹´£¨Ñ¡^¡C¬°¤FÀò±o§ó¦nªº¸gÅç¡An§Q¥Î¬y¦æªº¶}µoªO¡A¨Ò¦pBeagleBone¡BMinnowBoard Max©ÎªÌWandboard¡CBeagleBone¬OÀu¨qªº§C¦¨¥»ªº¹êÅ祻O¡C¥t¥~¨âÓªO´£¨Ñ§ó¦nªº©Ê¯à¡A¤]Åý§AÀò±o Ãö¤_¦h®Ö¨t²Îªº¸gÅç¡C
¤ÀªR¥N½X¦}¥B¹Á¸Õ²z¸Ñ¥»®Ñªº¥N½X¡C¿í´`¨BÆJ¡AµM¦Z³q¹L§ïÅܳ]¸m¡BÀ³¥Î§A¦Û¤vªº°t¸mµ¥¨Ó§¹¦¨¦Û¤vªº³]p¡C³o¬O³Ì¦nªº¾Ç²ß¤è¦¡¡A¦}¥B§Ú¥i¥H§i¶D§A¡A³o¤]¬Û·í¦³½ì¡CÅý§A¦Û¤vªº²Ä¤@ÓLinuxµo¦æª©¤u§@¦b§A¿ï¾Üªº¤@Óµw¥ó¤W¬O«Ü´ÎªºÅéÅç¡C |
¤º®e²¤¶¡G¶}µoªÌ¶V¨Ó¶V¦h¦a¶°¦¨Linux¨ì´O¤J¦¡¨t²Î¤¤¡CLinux´X¥G¤ä«ù©Ò¦³µw¥ó¬[ºc©M«Ü¦h¥~³]¡A¥iÂX®i©Ê¦n¡A¯à´£¨Ñ§¹¾ãªº·½¥N½X¡A¦}¥B¤£n¨D¯S³\Åv¨Ï¥Î¶O¡CYocto¶µ¥Ø¨Ï±o©w¨îLinux¥Î¤_´O¤J¦¡¨t²ÎÅܱo¤×¨ä²³æ¡C¦pªG§A¬O¦³¹ê»ÚLinux¸gÅ窺¶}µoªÌ¡A¨º¤\¥»®Ñ±NÀ°§U§Aª«ºÉ¨ä¥Î¡C ¡@¡@¥»®Ñ´£¨Ñ¤F¹ïYocto¶µ¥Øºc«Ø¨t²Î©M¤ÞÀºªº²`¤J±´¨s¡A¦}¥BÁ¿±Â¤F±qªO¤ä«ù¥]¨ì¦X³WºÞ²zªº°ª¯Å¥DÃD¡C³q¹L¾\Ū¥»®Ñ¡A§A±N¾Ç²ß¦p¦ó ¡P¸Ñ¨M³Ð«Ø©w¨î´O¤J¦¡µo¦æª©ªºÃöÁä¬D¾Ô ¡P¥ÎOpenEmbeddedºc«Ø¨t²Î±Ò°Ê©M¡¥N¾Þ§@¨t²Î´Ìªººc«Ø ¡P´x´¤ºc«Ø¤u§@¬y¡B¬[ºc©MBitBakeºc«Ø¤ÞÀº ¡P§Ö³t¬G»Ù±Æ°£ºc«Ø°ÝÃD ¡P¥Î¤º¸mªºÂŹϩΪ̱qÀY¶}©l©w¨î·sªºµo¦æª© ¡P¨Ï¥ÎBitBakeµæÃгЫطs³n¥ó¥] ¡Pºc«Ø¤º®Ö¡B³]¸m°t¸m©MÀ³¥Î¸É¤B ¡P¤ä«ù¦h¼ËªºCPU¬[ºc©M¨t²Î ¡P¬°µw¥ó¯S©wªº½Õ¾ã³Ð«ØªO¤ä«ù¥] ¡P¬°©¹ªð¶}µo´£¨ÑÀ³¥Î¶}µo¤u¨ã¥] ¡P¦b¹ê»Úµw¥ó¥Ø¼Ð¤W¶i¦æ»·µ{¹B¦æ©M½Õ¸ÕÀ³¥Î ¡P½T«O¶}·½³\¥i¦X³W ¡P¥ÎToaster¡Bºc«Ø¾ú¥v¡B·½Ü®w©M¦Û°Êºc«Ø¾¹ÂX®i°ò¤_¹Î¶¤ªº¶µ¥Ø
¥»®Ñ¬O±Mª`¤_Á¿¸Ñ°ò¤_Yocto Project´O¤J¦¡¨t²Î¶}µoªº¹ê¾Ô¤â¥U¡A±q¶}µoªÌ¨¤«×¸Ô²ÓÄÄÄÀºc«Ø¨t²Î¥H¤Î¦p¦ó¦³®Ä¨Ï¥Î¥¦¨Óºc«Ø©w¨îªºLinuxµo¦æª©¡C®Ñ¤¤´£¨Ñ¤j¶q¯u¹ê®×¨Ò¡A²[»\¶}µoªÌ¦bºc«Ø¹Lµ{ªº¦UÓÀô¸`»Ýn¸Ñ¨Mªº°ÝÃD¡A¥i¥HÀ°§U§A§Ö³t´x´¤¨Ï¥ÎYocto Project¤u¨ã¶i¦æ´O¤J¦¡¨t²Î¶}µoªº¦UºØ¹ê¥Î§Þ³N¡B§Þ¥©¡A°ª®Ä¸Ñ¨M¹ê»Ú¶µ¥Ø°ÝÃD¡C
¦b¥»®Ñ¤¤¡A§A±N·|¾Ç²ßOpenEmbeddedºc«Ø¨t²Î¦p¦ó¤u§@¡B¦p¦ó½s¼gµæÃС]recipe¡^¨Óºc«Ø§A¦Û¤vªº³n¥ó²Õ¥ó¡B¦p¦ó¨Ï¥Î©M³Ð«ØYocto¶µ¥ØªO¤ä«ù¥]¡]BSP¡^¨Ó¤ä«ù¤£¦Pªºµw¥ó¥»O¥H¤Î¦p¦ó¶i¦æ½Õ¸Õ¡AÁÙ±N¾Ç²ß¦p¦ó¬°À³¥Î¶}µoºc«Ø³n¥ó¶}µo¥]¡A¥H¤Î¦p¦ó¬°µLÁ_©¹ªð¶}µo¡]round-trip development¡^¦Ó±N¨ä»P¬y¦æªºEclipse¶°¦¨¶}µoÀô¹Ò¡]IDE¡^¶°¦¨°_¨Ó¡C
¥»®Ñ¤º®eÂ×´I¡B±ø²z²M´·¡Bª`«¹ê½î¡A¾A¦X¨ã¦³¤@©wLinux°ò¦ªº³n¥ó¶}µoªÌ©Mµ{§Çû¡B´O¤J¦¡´ú¸Õ¤uµ{®v¡B²£«~¸g²zµ¥¾\Ū°Ñ¦Ò¡C |
¥Ø¿ý¡GĶªÌ§Ç §Ç «e¨¥ PÁ ²Ä1³¹¡@¥Î¤_´O¤J¦¡¨t²ÎªºLinux 1 1.1¡@¬°¤°¤\¬°´O¤J¦¡¨t²Î¿ï¾ÜLinux 1 1.2¡@´O¤J¦¡Linux§Î¶Õ 3 1.2.1¡@´O¤J¦¡Linuxµo¦æª© 3 1.2.2¡@´O¤J¦¡Linux¶}µo¤u¨ã 4 1.3¡@©w¨îLinuxµo¦æª©¡X¬°¤°¤\§xÃø 6 1.4¡@Ãö¤_¶}·½³\¥iªº´X¥y¸Ü 8 1.5¡@²Õ´¡B¬ÛÃö¹êÅé©M¼Ð·Ç 9 1.5.1¡@Linux°òª÷·| 9 1.5.2¡@Apache³n¥ó°òª÷·| 9 1.5.3¡@Eclipse°òª÷·| 9 1.5.4¡@Linux¼Ð·Ç°ò 10 1.5.5¡@®ø¶O¹q¤l²£«~¤u§@²Õ 10 1.6¡@Á`µ² 11 1.7¡@°Ñ¦Ò¤åÄm 11 ²Ä2³¹¡@Yocto¶µ¥Ø 12 2.1¡@±Ò°Ê²Ä¤@ÓYocto¶µ¥Øºc«Ø 12 2.1.1¡@¥ý¨M±ø¥ó 13 2.1.2¡@Àò¨úYocto¶µ¥Ø¤u¨ã 14 2.1.3¡@³]¸mºc«Ø¥D¾÷ 15 2.1.4¡@°t¸mºc«ØÀô¹Ò 16 2.1.5¡@±Ò°Êºc«Ø 18 2.1.6¡@ÅçÃÒºc«Øµ²ªG 19 2.1.7¡@Yocto¶µ¥Øºc«Ø¾¹¨ã 19 2.2¡@Yocto¶µ¥Ø¨t¦C 20 2.3¡@¾ú¥v·§Äý 22 2.3.1¡@OpenEmbedded 22 2.3.2¡@BitBake 22 2.3.3¡@Poky Linux 23 2.3.4¡@Yocto¶µ¥Ø 23 2.3.5¡@OpenEmbedded©MYocto¶µ¥ØªºÃö¨t 23 2.4¡@Yocto¶µ¥Ø³N»y 24 2.5¡@Á`µ² 25 2.6¡@°Ñ¦Ò¤åÄm 26 ²Ä3³¹¡@OpenEmbeddedºc«Ø¨t²Î 27 3.1¡@ºc«Ø¶}·½³n¥ó¥] 27 3.1.1¡@Àò¨ú 28 3.1.2¡@¸ÑÀ£ 28 3.1.3¡@¥´¸É¤B 28 3.1.4¡@°t¸m 29 3.1.5¡@ºc«Ø 29 3.1.6¡@¦w¸Ë 29 3.1.7¡@¥´¥] 30 3.2¡@OpenEmbedded¤u§@¬y 30 3.2.1¡@¤¸¼Æ¾Ú¤å¥ó 31 3.2.2¡@¤u§@¬y¹Lµ{¨BÆJ 33 3.3¡@OpenEmbeddedºc«Ø¨t²Î¬[ºc 35 3.3.1¡@ºc«Ø¨t²Îµ²ºc 36 3.3.2¡@ºc«ØÀô¹Òµ²ºc 39 3.3.3¡@¤¸¼Æ¾Ú¼hµ²ºc 41 3.4¡@Á`µ² 44 3.5¡@°Ñ¦Ò¤åÄm 44 ²Ä4³¹¡@BitBakeºc«Ø¤ÞÀº 45 4.1¡@Àò¨ú©M¦w¸ËBitBake 45 4.1.1¡@¨Ï¥Îµo¥¬§Ö·Ó 46 4.1.2¡@§J¶©BitBake¶}µoÜ®w 46 4.1.3¡@ºc«Ø©M¦w¸ËBitBake 46 4.2¡@¹B¦æBitBake 46 4.2.1¡@BitBake°õ¦æÀô¹Ò 47 4.2.2¡@BitBake©R¥O¦æ 48 4.3¡@BitBake¤¸¼Æ¾Ú 54 4.4¡@¤¸¼Æ¾Ú»yªk 55 4.4.1¡@ª`ÄÀ 55 4.4.2¡@Åܶq 55 4.4.3¡@¥]§t 59 4.4.4¡@Ä~©Ó 60 4.4.5¡@¥i°õ¦æ¤¸¼Æ¾Ú 61 4.4.6¡@¤¸¼Æ¾ÚÄÝ©Ê 66 4.4.7¡@¤¸¼Æ¾Ú¦W¡]Áä¡^ÂX®i 66 4.5¡@·½¤U¸ü 66 4.5.1¡@¨Ï¥ÎFetchÃþ 67 4.5.2¡@Àò¨ú¾¹¹ê²{ 68 4.5.3¡@Ãè¹³ 72 4.6¡@HelloWorld¡XBitBake¤è¦¡ 74 4.7¡@¨Ì¿à³B²z 77 4.7.1¡@°t¸m 77 4.7.2¡@Án©ú¨Ì¿à 78 4.7.3¡@¦hÓ´£¨Ñ¾¹ 79 4.8¡@ª©¥»¿ï¾Ü 79 4.9¡@ÅÜÅé 80 4.10¡@Àq»{¤¸¼Æ¾Ú 80 4.10.1¡@Åܶq 81 4.10.2¡@¥ô°È 84 4.11¡@Á`µ² 84 4.12¡@°Ñ¦Ò¤åÄm 85 ²Ä5³¹¡@¬G»Ù±Æ°£ 86 5.1¡@°O¤é§Ó 86 5.1.1¡@¤é§Ó¤å¥ó 87 5.1.2¡@¨Ï¥Î°O¤é§Ó»y¥y 90 5.2¡@¥ô°È°õ¦æ 92 5.2.1¡@°õ¦æ¯S©w¥ô°È 93 5.2.2¡@¥ô°È¸}¥»¤å¥ó 94 5.3¡@¤ÀªR¤¸¼Æ¾Ú 94 5.4¡@¶}µoshell 95 5.5¡@¨Ì¿à©ÊÃö¨t¹Ï 95 5.6¡@½Õ¸Õ¼h 97 5.7¡@Á`µ² 98 ²Ä6³¹¡@Linux¨t²Î¬[ºc 100 6.1¡@Linux©ÎªÌGNU/Linux¡H 100 6.2¡@Linux¨t²ÎªºåªR 101 6.3¡@¤Þ¾É¥[¸üµ{§Ç 102 6.3.1¡@¤Þ¾É¥[¸üµ{§Çªº¨¤¦â 102 6.3.2¡@Linux¤Þ¾É¥[¸üµ{§Ç 103 6.4¡@¤º®Ö 106 6.4.1¡@¥DnLinux¤º®Ö¤l¨t²Î 107 6.4.2¡@Linux¤º®Ö±Ò°Ê 111 6.5¡@¥Î¤áªÅ¶¡ 112 6.6¡@Á`µ² 113 6.7¡@°Ñ¦Ò¤åÄm 113 ²Ä7³¹¡@ºc«Ø©w¨îLinuxµo¦æª© 114 7.1¡@®Ö¤ßÃè¹³¡X?Linuxµo¦æª©ÂÅ¹Ï 114 7.1.1¡@³q¹L¥»¦a°t¸m¨ÓÂX®i®Ö¤ßÃè¹³ 117 7.1.2¡@¥ÎQEMU´ú¸ÕÃè¹³ 118 7.1.3¡@¨Ï¥Îºc«Ø¾ú¥vÅçÃÒ©M¤ñ¸ûÃè¹³ 119 7.1.4¡@¥ÎµæÃÐÂX®i®Ö¤ßÃè¹³ 120 7.1.5¡@Ãè¹³¯S©Ê 120 7.1.6¡@¥]²Õ 122 7.2¡@±qÀYºc«ØÃè¹³ 126 7.3¡@Ãè¹³¿ï¶µ 128 7.3.1¡@»y¨¥©M°Ï°ì 128 7.3.2¡@¥]ºÞ²z 128 7.3.3¡@Ãè¹³¤j¤p 129 7.3.4¡@®Ú¤å¥ó¨t²ÎÃþ«¬ 130 7.3.5¡@¥Î¤á¡B²Õ©M±K½X 131 7.3.6¡@½Õ¾ã®Ú¤å¥ó¨t²Î 132 7.4¡@µo¦æª©°t¸m 134 7.4.1¡@¼Ð·Çµo¦æª©µ¦²¤ 134 7.4.2¡@Pokyµo¦æª©µ¦²¤ 135 7.4.3¡@µo¦æª©¯S©Ê 140 7.4.4¡@¨t²ÎºÞ²z¾¹ 142 7.4.5¡@Àq»{µo¦æª©³]¸m 143 7.5¡@¥~³¡¼h 144 7.6¡@Hob 145 7.7¡@Á`µ² 147 ²Ä8³¹¡@³n¥ó¥]µæÃÐ 148 8.1¡@µæÃÐ¥¬§½©MºD¨Ò 148 8.1.1¡@µæÃФå¥ó¦W 149 8.1.2¡@µæÃÐ¥¬§½ 149 8.1.3¡@®æ¦¡«ü¾É¤è°w 156 8.2¡@¼g·sµæÃÐ 157 8.2.1¡@«Ø¥ßµæÃÐ 159 8.2.2¡@Àò¨ú·½¥N½X 159 8.2.3¡@¸ÑÀ£·½¥N½X 160 8.2.4¡@¬°·½¥N½X¥´¸É¤B 161 8.2.5¡@¼W¥[³\¥i«H®§ 161 8.2.6¡@°t¸m·½¥N½X 162 8.2.7¡@½sĶ 163 8.2.8¡@¦w¸Ëºc«Ø¿é¥X 164 8.2.9¡@³]¸m¨t²ÎªA°È 165 8.2.10¡@¥´¥]ºc«Ø¿é¥X 166 8.2.11¡@©w¨î¦w¸Ë¸}¥» 168 8.2.12¡@ÅÜÅé 169 8.3¡@µæÃШҤl 170 8.3.1¡@C¤å¥ó³n¥ó¥] 170 8.3.2¡@°ò¤_makefileªº³n¥ó¥] 171 8.3.3¡@°ò¤_CMakeªº³n¥ó¥] 173 8.3.4¡@°ò¤_GNU Autotoolsªº³n¥ó¥] 174 8.3.5¡@¥~³¡ºc«Ø³n¥ó¥] 175 8.4¡@devtool 175 8.4.1¡@¨Ï¥Îdevtoolªº©¹ªð¶}µo 176 8.4.2¡@¥Î¤_²{¦³µæÃЪº¤u§@¬y 179 8.5¡@Á`µ² 180 8.6¡@°Ñ¦Ò¤åÄm 180 ²Ä9³¹¡@¤º®ÖµæÃÐ 181 9.1¡@¤º®Ö°t¸m 182 9.1.1¡@µæ³æ°t¸m 182 9.1.2¡@°t¸m¤ù¬q 184 9.2¡@¤º®Ö¸É¤B 186 9.3¡@¤º®ÖµæÃÐ 188 9.3.1¡@±q¤@ÓLinux¤º®Ö¾ðºc«Ø 188 9.3.2¡@±qYocto¶µ¥Ø¤º®ÖÜ®wºc«Ø 192 9.4¡@¾ð¥~¼Ò¶ô 202 9.4.1¡@¶}µo¤º®Ö¼Ò¶ô 202 9.4.2¡@³Ð«Ø¥Î¤_²Ä¤T¤è¼Ò¶ôªºµæÃÐ 205 9.4.3¡@§â¼Ò¶ô¥]§t¦b®Ú¤å¥ó¨t²Î¤¤ 206 9.4.4¡@¼Ò¶ô¦Û°Ê¥[¸ü 207 9.5¡@³]³Æ¾ð 207 9.6¡@Á`µ² 208 9.7¡@°Ñ¦Ò¤åÄm 208 ²Ä10³¹¡@ªO¤ä«ù¥] 209 10.1¡@Yocto¶µ¥ØªO¤ä«ù¥]²z©À 209 10.2¡@¥ÎªO¤ä«ù¥]ºc«Ø 212 10.2.1¡@¬°BeagleBoneºc«Ø 212 10.2.2¡@¥~³¡Yocto¶µ¥ØªO¤ä«ù¥] 218 10.3¡@Yocto¶µ¥ØªO¤ä«ù¥]¤º³¡ 222 10.3.1¡@³\¥i¤å¥ó 224 10.3.2¡@ºûÅ@ªÌ¤å¥ó 224 10.3.3¡@README¤å¥ó 224 10.3.4¡@README.sources¤å¥ó 224 10.3.5¡@¹wºc«Ø¤G¶i¨î 225 10.3.6¡@¼h°t¸m¤å¥ó 225 10.3.7¡@¾÷¾¹°t¸m¤å¥ó 225 10.3.8¡@Ãþ 226 10.3.9¡@µæÃФå¥ó 226 10.4¡@³Ð«ØYocto¶µ¥ØªO¤ä«ù¥] 226 10.4.1¡@Yocto¶µ¥ØªO¤ä«ù¥]¤u¨ã 227 10.4.2¡@¥ÎYoctoªO¤ä«ù¥]¤u¨ã³Ð«ØªO¤ä«ù¥] 230 10.5¡@½ÕÀu 232 10.6¡@³Ð«Ø¥i±Ò°Ê¤¶½èÃè¹³ 233 10.6.1¡@¥Î²i¨î¼Ò¦¡³Ð«ØÃè¹³ 234 10.6.2¡@¥Îì©l¼Ò¦¡³Ð«ØÃè¹³ 235 10.6.3¡@kickstart¤å¥ó 236 10.6.4¡@kickstart¤å¥ó«ü¥O 237 10.6.5¡@´¡¥ó 239 10.6.6¡@¶Ç¿éÃè¹³ 240 10.7¡@Á`µ² 240 10.8¡@°Ñ¦Ò¤åÄm 241 ²Ä11³¹¡@À³¥Î¶}µo 242 11.1¡@Yocto¶µ¥ØADT¤º³¡ 242 11.2¡@³]¸mYocto¶µ¥ØADT 244 11.2.1¡@ºc«Ø¤u¨ãÃì¦w¸Ëµ{§Ç 244 11.2.2¡@¦w¸Ë¤u¨ãÃì 245 11.2.3¡@¥Î¤u¨ãÃì¤u§@ 247 11.2.4¡@¥Ø¼Ð¤W°õ¦æ 249 11.2.5¡@»·µ{¥Ø¼Ð¤W½Õ¸Õ 250 11.3¡@ºc«ØÀ³¥Î 253 11.3.1¡@°ò¤_makefileªºÀ³¥Î 253 11.3.2¡@°ò¤_AutotoolsªºÀ³¥Î 254 11.4¡@Eclipse¶°¦¨ 254 11.4.1¡@¦w¸ËEclipse IDE 255 11.4.2¡@¶°¦¨Yocto¶µ¥ØADT 257 11.4.3¡@¶}µoÀ³¥Î 258 11.4.4¡@¦b¥Ø¼Ð¤W³¡¸p¡B¹B¦æ©M´ú¸Õ 260 11.5¡@¨Ï¥Î¼ÒÀÀ¥Ø¼ÐªºÀ³¥Î¶}µo 266 11.5.1¡@¬°¥ÎQEMU¶i¦æÀ³¥Î¶}µo°µ·Ç³Æ 266 11.5.2¡@ºc«ØÀ³¥Î¦}¦bQEMU¤¤±Ò¥Î¥¦ 268 11.6¡@Á`µ² 268 11.7¡@°Ñ¦Ò¤åÄm 269 ²Ä12³¹¡@³\¥i©M¦X³W 270 12.1¡@ºÞ²z³\¥i 270 12.1.1¡@³\¥i°lÂÜ 271 12.1.2¡@³q¥Î³\¥i 273 12.1.3¡@°Ó·~³\¥iªº¥] 273 12.1.4¡@³\¥i³¡¸p 274 12.1.5¡@¶Â¦W³æ³\¥i 274 12.1.6¡@´£¨Ñ³\¥iµ{§Ç²M³æ©M¤å¥» 275 12.2¡@ºÞ²z·½¥N½X 275 12.3¡@Á`µ² 277 12.4¡@°Ñ¦Ò¤åÄm 277 ²Ä13³¹¡@°ª¯Å¥DÃD 278 13.1¡@Toaster 278 13.1.1¡@Toaster¾Þ§@¼Ò¦¡ 279 13.1.2¡@Toaster³]¸m 279 13.1.3¡@¥»¦aToaster¶}µo 280 13.1.4¡@Toaster°t¸m 281 13.1.5¡@Toaster¥Í²£³¡¸p 283 13.1.6¡@Toaster Web¥Î¤á¬É± 287 13.2¡@ºc«Ø¾ú¥v 289 13.2.1¡@±Ò¥Îºc«Ø¾ú¥v 289 13.2.2¡@°t¸mºc«Ø¾ú¥v 289 13.2.3¡@±À°eºc«Ø¾ú¥v¨ìGitÜ®wªA°È¾¹ 290 13.2.4¡@²z¸Ñºc«Ø¾ú¥v 292 13.3¡@·½Ãè¹³ 295 13.3.1¡@¨Ï¥Î·½Ãè¹³ 296 13.3.2¡@³]¸m·½Ãè¹³ 297 13.4¡@¦Û°Êºc«Ø¾¹ 298 13.4.1¡@¦w¸Ë¦Û°Êºc«Ø¾¹ 299 13.4.2¡@°t¸m¦Û°Êºc«Ø¾¹ 300 13.5¡@Á`µ² 303 13.6¡@°Ñ¦Ò¤åÄm 303 ªþ¿ýA¡@¶}·½³\¥i¨óij 304 ªþ¿ýB¡@¤¸¼Æ¾Ú°Ñ¦Ò 327 |
§Ç¡G |