Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OP-TEE
busybox
提交
ff9f2f6f
B
busybox
项目概览
OP-TEE
/
busybox
通知
0
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
B
busybox
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
ff9f2f6f
编写于
10月 09, 2005
作者:
R
Rob Landley
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Fluff out INSTALL a bit.
上级
332fc100
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
83 addition
and
34 deletion
+83
-34
INSTALL
INSTALL
+82
-34
README
README
+1
-0
未找到文件。
INSTALL
浏览文件 @
ff9f2f6f
Building:
Building:
=========
=========
You will usually build in the source-tree.
The BusyBox build process is similar to the Linux kernel build:
Alternatively you can build out-of-tree to have the object files separated
make menuconfig # This creates a file called ".config"
from the source. This allows for building several different configurations
make # This creates the "busybox" executable
from the same set of sources.
make install # or make PREFIX=/path/from/root install
A) Building in the source-tree:
The full list of configuration and install options is available by typing:
-------------------------------
1) Run 'make config' or 'make menuconfig' and select the
make help
functionality that you wish to enable.
2) Run 'make'
Quick Start:
============
3) Run 'make install' or 'make PREFIX=/target install' to
The easy way to try out BusyBox for the first time, without having to install
install busybox and all the needed links. Some people
it, is to enable all features and then use "standalone shell" mode with a
will prefer to install using hardlinks and will instead
blank command $PATH:
want to run 'make install-hardlinks'....
B) Building out-of-tree:
make allyesconfig
------------------------
make
PATH= ./busybox ash
Note that top_srcdir, O and top_builddir have to be given as absolute paths.
Standalone shell mode causes busybox's built-in command shell to run
any built-in busybox applets directly, without looking for external
programs by that name. Supplying an empty command path (as above) means
the only commands busybox can find are the built-in ones.
1) make the directory to hold the object files and chdir to it:
(Note that the standalone shell requires the /proc directory to function.)
'mkdir /tmp/bb ; cd /tmp/bb'
Then prepare the config giving the full path to the source in top_srcdir:
make top_srcdir=/path/busybox -f /path/busybox/Makefile O=/tmp/b allyesconfig
Note that O=$(pwd) is the default if no O= was specified.
You now have a buildable tree in $O and can run 'make' without the need
Configuring Busybox:
to specify any paths.
====================
Proceed with step #A2 above.
Busybox is optimized for size, but enabling the full set of functionality
still results in a fairly large executable (more than 1 megabyte when
statically linked). To save space, busybox can be configured with only the
set of applets needed for each environment. The minimal configuration, with
all applets disabled, produces a 4k executable. (It's useless, but very small.)
The manual configurators "make config" and "make menuconfig" modify the
existing configuration. Quick ways to get starting configurations include
"make allyesconfig" (enables almost all options), "make allnoconfig" (disables
all options), "make allbaseconfig" (enables all applets but disables all
optional features), and "make defconfig" (reset to defaults).
Installation:
Configuring BusyBox produces a file ".config", which can be saved for future
=============
use.
After the build is complete, a busybox.links file is generated. This is
Installing Busybox:
used by 'make install' to create symlinks to the BusyBox binary for all
===================
compiled in functions. By default, 'make install' will place the symlink
forest into `pwd`/_install unless you have defined the PREFIX environment
variable (i.e., 'make PREFIX=/tmp/foo install')
If you wish to install hard links, rather than symlinks, you can use
Busybox is a single executable that can behave like many different commands,
'make PREFIX=/tmp/foo install-hardlinks' instead.
and BusyBox uses the name it was invoked under to determine the desired
behavior. (Try "mv busybox ls" and then "./ls -l".)
Installing busybox consists of creating symlinks (or hardlinks) to the busybox
binary for each applet enabled in busybox, and making sure these symlinks are
in the shell's command $PATH. Running "make install" creates these symlinks,
or "make install-hardlinks" creates hardlinks instead (useful on systems with
a limited number of inodes). This install process ues the file
"busybox.links" (created by make), which contains the list of enabled applets
and the path at which to install them.
The special applet name "busybox" (or with any optional suffix, such as
"busybox-static") uses the first argument to determine which applet to behave
as (for example, "./busybox cat LICENSE"). (Running the busybox applet with
no arguments gives a list of all enabled applets.)
Building out-of-tree:
=====================
By default, the BusyBox build puts its temporary files in the source tree.
Building from a read-only source tree, or to building multiple
configurations from the same source directory, requires the ability to
put the temporary files somewhere else.
To build out of tree, use the O=$BUILDPATH option during the configuration
step, as in:
make O=/some/empty/directory allyesconfig
cd /some/empty/directory
make
make PREFIX=. install
(Note, O= requires an absolute path.)
Alternately, cd to the empty directory and do this instead:
make top_srcdir=/path/to/source -f /path/to/source/Makefile allyesconfig
make
make install
More Information:
=================
Se also the busybox FAQ, under the questions "How can I get started using
BusyBox" and "How do I build a BusyBox-based system?" The BusyBox FAQ is
available from http://www.busybox.net/FAQ.html or as the file
docs/busybox.net/FAQ.html in this tarball.
README
浏览文件 @
ff9f2f6f
Please see the LICENSE file for details on copying and usage.
Please see the LICENSE file for details on copying and usage.
Please refer to the INSTALL file for instructions on how to build.
What is busybox:
What is busybox:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录