mirror of
https://github.com/DragonOS-Community/DragonOS.git
synced 2025-06-08 18:26:48 +00:00
* 修改include路径 * 添加了创建libsysapi.a和/bin/sysroot/usr/include/+lib/的代码 * 修补.gitignore * 删除多余项 * 优化脚本可读性 * 新增crt0 crti crtn * 编译binutils所需的东西 * fflush()和fprintf()的简单实现 * 应用程序启动前,调用初始化libc的函数 * 自动创建sysroot * 添加了stderr的初始化 * 修改了stderr的初始化 * 内核添加对stdio的简略处理 * 格式化代码 * 修正打开stdio文件描述符的问题 * bugfix: 修复fprintf忘记释放buf的问题 * 修复shell错误地把入口设置为main而不是_start的问题 * 新增__cxa_atexit (gcc要求libc提供这个) * 增加putchar puts * 更新写入磁盘镜像的脚本,默认无参数时,使用legacy方式安装 * 更新编译脚本 * stdio增加eof的定义 * 新增extern cplusplus * mpfr gmp mpc 构建脚本 * 更新libsysapi.a为libc.a * 加上ferror fopen fclose * 更新移植的软件的构建脚本 * 更改build_gcc_toolchain.sh中的-save参数名为-save-cache Co-authored-by: longjin <longjin@RinGoTek.cn>
42 lines
871 B
Docker
42 lines
871 B
Docker
# 本Dockerfile用于构建binutils 2.38的交叉编译环境
|
|
|
|
FROM ubuntu:jammy
|
|
|
|
# Install dependencies
|
|
RUN apt-get update && apt-get install -y \
|
|
autoconf2.69 \
|
|
automake \
|
|
bison \
|
|
build-essential \
|
|
flex \
|
|
gawk \
|
|
gettext \
|
|
git \
|
|
libgmp-dev \
|
|
libmpc-dev \
|
|
libmpfr-dev \
|
|
libncurses5-dev \
|
|
libtool \
|
|
m4 \
|
|
make \
|
|
ninja-build \
|
|
python3 \
|
|
texinfo \
|
|
wget \
|
|
xz-utils \
|
|
zlib1g-dev \
|
|
wget \
|
|
&& rm /usr/bin/autoconf && ln -s /usr/bin/autoconf2.69 /usr/bin/autoconf
|
|
|
|
WORKDIR /opt
|
|
|
|
# download automake 1.15.1
|
|
RUN wget http://mirrors.ustc.edu.cn/gnu/automake/automake-1.15.1.tar.xz && \
|
|
tar -xvf automake-1.15.1.tar.xz && \
|
|
cd automake-1.15.1 && \
|
|
./configure --prefix=/usr && \
|
|
make && \
|
|
make install && \
|
|
cd .. && \
|
|
rm -rf automake-1.15.1 automake-1.15.1.tar.xz
|