ubuntu cross compile

USER=lindyang
DIRECTORY=/opt/arm64

sudo apt install -y debootstrap qemu-user-static binfmt-support schroot
sudo debootstrap --arch=arm64 --foreign --include=gcc,g++ bionic $DIRECTORY
sudo cp /usr/bin/qemu-aarch64-static $DIRECTORY/usr/bin

cat <<EOF | sudo tee /etc/schroot/chroot.d/bionic-arm64
[bionic-arm64]
description=Ubuntu bionic arm64
type=directory
directory=$DIRECTORY
groups=sbuild,root
root-groups=sbuild,root
users=root,$USER
EOF

sudo chroot $DIRECTORY
/debootstrap/debootstrap --second-stage
export LANG=en_US.UTF-8
cp /etc/apt/sources.list{,.orig}
cat > /etc/apt/sources.list <<'EOF'
deb http://ports.ubuntu.com/ubuntu-ports bionic main restricted
deb http://ports.ubuntu.com/ubuntu-ports bionic-updates main restricted
deb http://ports.ubuntu.com/ubuntu-ports bionic universe
deb http://ports.ubuntu.com/ubuntu-ports bionic-updates universe
deb http://ports.ubuntu.com/ubuntu-ports bionic multiverse
deb http://ports.ubuntu.com/ubuntu-ports bionic-updates multiverse
deb http://ports.ubuntu.com/ubuntu-ports bionic-backports main restricted universe multiverse
deb http://ports.ubuntu.com/ubuntu-ports bionic-security main restricted
deb http://ports.ubuntu.com/ubuntu-ports bionic-security universe
deb http://ports.ubuntu.com/ubuntu-ports bionic-security multiverse
EOF

apt update;
apt install -y git curl;

mkdir -p ~;
git clone https://gitee.com/pyenv/pyenv.git ~/.pyenv;
cat >> ~/.bashrc <<'EOF'
export PATH="~/.pyenv/bin:$PATH"
eval "$(pyenv init -)"
EOF
source ~/.bashrc;

mkdir ~/.pip;
cat > ~/.pip/pip.conf <<EOF
[global]
index-url=https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-url=pypi.tuna.tsinghua.edu.cn
EOF

apt install -y libmysql++-dev;
apt install -y libmysqlclient-dev;  # mysql_config
apt install -y build-essential;  # gcc
apt install -y libtool;  # gcc
apt install -y libreadline6-dev;  # readline
apt install -y libbz2-dev;  # bz2
apt install -y libsqlite3-dev;  # SQLite3
apt install -y zlib1g-dev;  # zlib
apt install -y libssl-dev;  # ssl
apt install -y libffi-dev;  # No module named ‘_ctypes’
apt install -y libncursesw5-dev;  # No module named '_curses'

mkdir ~/.pyenv/cache;
PYV=3.7.3;
curl -OC - https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tar.xz;
mv Python-3.7.3.tar.xz ~/.pyenv/cache/;
pyenv install -v $PYV;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 16宿命:用概率思维提高你的胜算 以前的我是风险厌恶者,不喜欢去冒险,但是人生放弃了冒险,也就放弃了无数的可能。 ...
    yichen大刀阅读 6,104评论 0 4
  • 公元:2019年11月28日19时42分农历:二零一九年 十一月 初三日 戌时干支:己亥乙亥己巳甲戌当月节气:立冬...
    石放阅读 6,913评论 0 2
  • 今天上午陪老妈看病,下午健身房跑步,晚上想想今天还没有断舍离,马上做,衣架和旁边的的布衣架,一看乱乱,又想想自己是...
    影子3623253阅读 2,932评论 3 8