配置小飞机,下载传送门

  安装

1
2
dpkg -i xxx
apt-get -f install

  设置成全局代理

设置终端代理,推荐使用polipo(使用别的全局代理方式可能导致拉取旧的代码的时候代理出问题,喜欢探索的同学可以试下别的方式,信奉人生苦短少瞎折腾的同学跟着这个步骤一步一步来就行;这样配置成功之后终端走的是ssr的全局代理,如果浏览器如chrome想走代理使用终端起chrome进程即可)

安装

1
sudo apt-get install polipo

修改配置文件

1
sudo gedit /etc/polipo/config

改为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# This file only needs to list configuration variables that deviate
# from the default values. See /usr/share/doc/polipo/examples/config.sample
# and "polipo -v" for variables you can tweak and further information.

logSyslog = false
logFile = "/var/log/polipo/polipo.log"

socksParentProxy = "127.0.0.1:1080"
socksProxyType = socks5

chunkHighMark = 50331648
objectHighMark = 16384

serverMaxSlots = 64
serverSlots = 16
serverSlots1 = 32

proxyAddress = "0.0.0.0"
proxyPort = 8123

重启polipo生效

1
/etc/init.d/polipo restart

修改~/.bashrc添加

1
2
3
export http_proxy="localhost:8123"
export https_proxy="localhost:8123"
export ftp_proxy="localhost:8123"

创建~/.boto文件

1
2
3
[Boto]
proxy=127.0.0.1
proxy_port=8123

导出环境变量

1
echo 'export NO_AUTH_BOTO_CONFIG=~/.boto' >> ~/.bashrc

重启bash即可(重启bash后可以用curl google.com检查下是否成功)

配置V8

  安装ninja并写入bashrc

1
2
3
4
git clone https://github.com/ninja-build/ninja.git
cd ninja && ./configure.py --bootstrap && cd ..
echo 'export PATH=$PATH:"/path/to/ninja"' >> ~/.bashrc
bash

  安装depot_tools

1
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

写入.bashrc

1
2
echo 'export PATH=$PATH:"/path/to/depot_tools"' >> ~/.bashrc
bash

完成后执行

1
2
3
mkdir v8
cd v8
fetch v8

下载完成后执行

1
gclient sync

编译(debug版)

1
2
tools/dev/v8gen.py x64.debug
ninja -C out.gn/x64.debug d8

编译(release版)

1
2
tools/dev/v8gen.py x64.release
ninja -C out.gn/x64.release d8

安装turbolizer

  turbolizer安装时需要配置npm的代理,一个简单易行的方法是修改添加~/.npmrc文件,并写入以下内容

1
2
3
proxy=http://127.0.0.1:8123/
https-proxy=http://127.0.0.1:8123
registry=http://registry.npmjs.org/

配置好npm代理后切换到/v8/tools/turbolizer目录下安装

1
2
npm i
npm run-script build

使用,在turbolizer目录下开启本地端口

1
python -m SimpleHTTPServer 8000

打开google-chrome浏览器访问本地8000端口即可

可能的问题:

0.如果在拉取旧的commit(git reset –hard xxx)的时候使用gclient sync报错

1
2
3
4
Error: 4> 
4> ____ v8/buildtools at xxx
4> You have unstaged changes.
4> Please commit, stash, or reset.

解决方法,使用

1
gclient sync -f

1.如果碰到编译时tools/dev/v8gen.py x64.debug报错

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
################################################################################
/usr/bin/python -u tools/mb/mb.py gen -f infra/mb/mb_config.pyl -m developer_default -b x64.debug out.gn/x64.debug

Writing """\
is_debug = true
target_cpu = "x64"
v8_enable_backtrace = true
v8_enable_slow_dchecks = true
v8_optimized_debug = false
""" to /home/r00t/v8/out.gn/x64.debug/args.gn.

/home/r00t/v8/buildtools/linux64/gn gen out.gn/x64.debug --check
-> returned 1
ERROR at //build/config/linux/pkg_config.gni:103:17: Script returned non-zero exit code.
pkgresult = exec_script(pkg_config_script, args, "value")
^----------
Current dir: /home/r00t/v8/out.gn/x64.debug/
Command: python /home/r00t/v8/build/config/linux/pkg-config.py -s /home/r00t/v8/build/linux/debian_sid_amd64-sysroot -a x64 glib-2.0 gmodule-2.0 gobject-2.0 gthread-2.0
Returned 1.

执行如下命令

1
sudo apt-get update && sudo apt-get install pkg-config

如果编译时出现权限问题chmod 777即可

1
2
cd ..
sudo chmod 777 -R v8