.. SPDX-License-Identifier: GPL-2.0 .. include:: ../disclaimer-zh_CN.rst :Original: Documentation/kbuild/headers_install.rst :Translator: 慕冬亮 Dongliang Mu <dzm91@hust.edu.cn> ============================ å¯¼å‡ºå†…æ ¸å¤´æ–‡ä»¶ä¾›ç”¨æˆ·ç©ºé—´ä½¿ç”¨ ============================ "make headers_install" 命令以适åˆäºŽç”¨æˆ·ç©ºé—´ç¨‹åºçš„å½¢å¼å¯¼å‡ºå†…æ ¸å¤´æ–‡ä»¶ã€‚ Linux å†…æ ¸å¯¼å‡ºçš„å¤´æ–‡ä»¶æ述了用户空间程åºå°è¯•ä½¿ç”¨å†…æ ¸æœåŠ¡çš„ APIã€‚è¿™äº›å†…æ ¸ 头文件被系统的 C 库(例如 glibc å’Œ uClibc)用于定义å¯ç”¨çš„ç³»ç»Ÿè°ƒç”¨ï¼Œä»¥åŠ ä¸Žè¿™äº›ç³»ç»Ÿè°ƒç”¨ä¸€èµ·ä½¿ç”¨çš„å¸¸é‡å’Œç»“构。C 库的头文件包括æ¥è‡ª linux å目录的 å†…æ ¸å¤´æ–‡ä»¶ã€‚ç³»ç»Ÿçš„ libc 头文件通常被安装在默认ä½ç½® /usr/includeï¼Œè€Œå†…æ ¸ 头文件在该ä½ç½®çš„å目录ä¸ï¼ˆä¸»è¦æ˜¯ /usr/include/linux å’Œ /usr/include/asm)。 å†…æ ¸å¤´æ–‡ä»¶å‘åŽå…¼å®¹ï¼Œä½†ä¸å‘å‰å…¼å®¹ã€‚è¿™æ„味ç€ä½¿ç”¨æ—§å†…æ ¸å¤´æ–‡ä»¶çš„ C åº“æž„å»ºçš„ç¨‹åº å¯ä»¥åœ¨æ–°å†…æ ¸ä¸Šè¿è¡Œï¼ˆå°½ç®¡å®ƒå¯èƒ½æ— æ³•è®¿é—®æ–°ç‰¹æ€§ï¼‰ï¼Œä½†ä½¿ç”¨æ–°å†…æ ¸å¤´æ–‡ä»¶æž„å»ºçš„ç¨‹åº å¯èƒ½æ— æ³•åœ¨æ—§å†…æ ¸ä¸Šè¿è¡Œã€‚ "make headers_install" 命令å¯ä»¥åœ¨å†…æ ¸æºä»£ç 的顶层目录ä¸è¿è¡Œï¼ˆæˆ–ä½¿ç”¨æ ‡å‡† çš„æ ‘å¤–æž„å»ºï¼‰ã€‚å®ƒæŽ¥å—两个å¯é€‰å‚æ•°:: make headers_install ARCH=i386 INSTALL_HDR_PATH=/usr ARCH 表明为其生æˆå¤´æ–‡ä»¶çš„架构,默认为当å‰æž¶æž„ã€‚å¯¼å‡ºå†…æ ¸å¤´æ–‡ä»¶çš„ linux/asm 目录是基于特定平å°çš„,è¦æŸ¥çœ‹æ”¯æŒæž¶æž„的完整列表,使用以下命令:: ls -d include/asm-* | sed 's/.*-//' INSTALL_HDR_PATH 表明头文件的安装ä½ç½®ï¼Œé»˜è®¤ä¸º "./usr"。 该命令会在 INSTALL_HDR_PATH ä¸è‡ªåŠ¨åˆ›å»ºåˆ›å»ºä¸€ä¸ª 'include' 目录,而头文件 会被安装在 INSTALL_HDR_PATH/include ä¸ã€‚ å†…æ ¸å¤´æ–‡ä»¶å¯¼å‡ºçš„åŸºç¡€è®¾æ–½ç”± David Woodhouse <dwmw2@infradead.org> 维护。