linuxÏÂautomakeÓ÷¨(ת)
×÷ΪLinux
ϵijÌÐò¿ª·¢ÈËÔ±£¬´ó¼ÒÒ»¶¨¶¼Óöµ½¹ýMakefile
£¬ÓÃmake
ÃüÁîÀ´±àÒë×Ô¼ºÐ´µÄ³ÌÐòȷʵÊǺܷ½±ã¡£Ò»°ãÇé¿öÏ£¬´ó¼Ò¶¼ÊÇÊÖ¹¤Ð´Ò»¸ö¼òµ¥Makefile
£¬Èç¹ûÒªÏëд³öÒ»¸ö·ûºÏ×ÔÓÉÈí¼þ¹ßÀýµÄMakefile
¾Í²»ÄÇôÈÝÒ×ÁË¡£
¡¡¡¡ÔÚ±¾ÎÄÖУ¬½«¸ø´ó¼Ò½éÉÜÈçºÎʹÓà autoconf
ºÍautomake
Á½¸ö¹¤¾ßÀ´°ïÖúÎÒÃÇ×Ô¶¯µØÉú³É·ûºÏ×ÔÓÉÈí¼þ¹ßÀýµÄMakefile
£¬ÕâÑù¾Í¿ÉÒÔÏó³£¼ûµÄGNU
³ÌÐòÒ»Ñù£¬Ö»ÒªÊ¹ÓÓ./configure”
£¬“make”
£¬“make install”
¾Í¿ÉÒ԰ѳÌÐò°²×°µ½Linux
ϵͳÖÐÈ¥ÁË¡£Õâ½«ÌØ±ðÊʺÏÏë×ö¿ª·ÅÔ´´úÂëÈí¼þµÄ³ÌÐò¿ª·¢ÈËÔ±£¬ÓÖ»òÈç¹ûÄãÖ»ÊÇ×Ô¼ºÐ´Ð©Ð¡µÄToy
³ÌÐò£¬ÄÇôÕâ¸öÎÄÕ¶ÔÄãÒ²»áÓкܴóµÄ°ïÖú¡£
±àÒëÒ»¸ö¼òµ¥µÄÔ´Îļþmain.c,ÐèÒª×Ô¶¯Éú³ÉÒ»¸ömakefile,ÒÔÏÂÊDz½Ö裺
µÚÒ»²½£º
----------
ÔÚ/root/project/mainĿ¼Ï´´½¨Ò»¸öÎļþmain.c,ÆäÄÚÈÝÈçÏ£º
------------------------------------------------
#include <stdio.h>
int main(int argc, char** argv)
{
printf("Hello, Auto Makefile!\n");
return 0;
}
------------------------------------------------
´Ëʱ״̬ÈçÏ£º
[root@localhost main]# pwd
/root/project/main
[root@localhost main]# ls
main.c
[root@localhost main]#
µÚ¶þ²½£º
----------
ÔËÐÐ autoscan
, ×Ô¶¯´´½¨Á½¸öÎļþ£º autoscan.log configure.scan
´Ëʱ״̬ÈçÏ£º
[root@localhost main]# autoscan
[root@localhost main]# ls
autoscan.log configure.scan
main.c
[root@localhost main]#
µÚÈý²½£º
----------
ÐÞ¸Äconfigure.scanµÄÎļþÃûΪconfigure.in
²é¿´configure.in
µÄÄÚÈÝ£º
------------------------------------------------
# -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.
AC_PREREQ(2.61)
AC_INIT(FULL-PACKAGE-NAME, VERSION, BUG-REPORT-ADDRESS)
AC_CONFIG_SRCDIR([main.c])
AC_CONFIG_HEADER([config.h])
# Checks for programs.
AC_PROG_CC
# Checks for libraries.
# Checks for header files.
# Checks for typedefs, structures, and compiler characteristics.
# Checks for library functions.
AC_OUTPUT
------------------------------------------------
½â¶ÁÒÔÉϵÄÎļþ£º
------------------------------------------------
Ïà¹ØÎĵµ£º
1. HCI²ãÐÒé¸ÅÊö£º
HCIÌṩһÌ×ͳһµÄ·½·¨À´·ÃÎÊBluetoothµ×²ã¡£ÈçͼËùʾ£º
´ÓͼÉÏ¿ÉÒÔ¿´³ö£¬Host Controller Interface(HCI) ¾ÍÊÇÓÃÀ´¹µÍ¨HostºÍModule¡£Hostͨ³£¾ÍÊÇPC£¬ ModuleÔòÊÇÒÔ¸÷ÖÖÎïÀíÁ¬½ÓÐÎʽ£¨USB,serial,pc-cardµÈ£©Á¬½Óµ½PCÉϵÄbluetooth Dongle¡£
ÔÚHostÕâÒ»¶Ë£ºapplication,SDP,L2capµÈÐÒé ......
ÀýÒ»£º·¢ËÍSignaling Packet£º
Signaling CommandÊÇ2¸öBluetoothʵÌåÖ®¼äµÄL2CAP²ãÃüÁî´«Êä¡£ËùÒÔµÃSignaling CommandʹÓÃCID 0x0001.
¶à¸öCommand¿ÉÒÔÔÚÒ»¸öC-frame£¨control frame£©Öз¢ËÍ¡£
Èç¹ûÒªÖ±½Ó·¢ËÍSignaling Command.ÐèÒª½¨Á¢SOCK_RAWÀàÐ͵ÄL2CAPÁ¬½ÓSocket¡£ÕâÑù²ÅÓлú»á×Ô¼ºÌî³äCommand Code£¬Identi ......
Ö¡»º³å£¨framebuffer£©ÊÇ Linux ΪÏÔʾÉ豸ÌṩµÄÒ»¸ö½Ó¿Ú£¬°ÑÏÔ´æ³éÏóºóµÄÒ»ÖÖÉ豸£¬ËûÔÊÐíÉϲãÓ¦ÓóÌÐòÔÚͼÐÎģʽÏÂÖ±½Ó¶ÔÏÔʾ»º³åÇø½øÐжÁд²Ù×÷¡£ÕâÖÖ²Ù×÷ÊdzéÏóµÄ£¬Í³Ò»µÄ¡£Óû§²»±Ø¹ØÐÄÎïÀíÏÔ´æµÄλÖᢻ»Ò³»úÖÆµÈµÈ¾ßÌåϸ½Ú¡£ÕâЩ¶¼ÊÇÓÉFramebuffer É豸Çý¶¯À´Íê³ÉµÄ¡£
  ......
LinuxϵͳµÄÿ¸ö·ÖÇøÔÚ±»´´½¨Ê±¶¼»áÉú³ÉÒ»¸öΨһʶ±ðµÄUUID£¬·½±ã¹ÜÀí¡£
»ñÈ¡·½·¨£º
1) # ll -l /dev/disk/by-uuid/
2) # blkid /dev/sda1
×¢£ºÐèÒªrootȨÏÞ
×¢£ºÊ¹ÓÃlibblkid.soºÍ/usr/include/blkid/blkid.h¿ÉÒÔʵÏÖ¸ÃÃüÁî¡£
3) # vol_id /dev/sda1
×¢£ºÄ³Ð©Linux°æ±¾²»Ö§³Ö
......
ת×Ô£ºhttp://roclinux.cn/?p=1288#more-1288
½ñÌìµÄÄÚÈÝÊÇLinuxµÄwcÃüÁÕâ¸öÃû×ֺܺüǣ¬ÒòΪʲô£¬ÄãÒ²ÖªµÀ¡£
Õâ¸öÃüÁîµÄ¹¦ÄÜÒ²ºÜºÃ¼Ç£¬ÒòΪËü¹¦ÄܺÜÓÐÏÞ£º
wc -c filename£ºÏÔʾһ¸öÎļþµÄ×Ö½ÚÊý
wc -m filename£ºÏÔʾһ¸öÎļþµÄ×Ö·ûÊý
wc -l filename£ºÏÔʾһ¸öÎļþµÄÐÐÊý
wc -L filename£ºÏÔʾһ¸öÎļþÖеÄ×î³ ......