Answers:
如果程序包支持,则可以使用该-j
标志允许并行作业运行,例如:
make -j8
关于此标志的更多详细信息,请参见Stackoverflow问题。为什么使-j传递的数量大于可用内核数时,其性能会更好?。
如果您有多台计算机,请尝试一下distcc。在涉及的机器上,sudo apt-get install distcc
。假设您的构建机器是192.168.1.1:
在辅助计算机上,运行:
sudo distccd --log-file=/tmp/distccd.log --daemon -a 192.168.1.1
在构建计算机上,在运行之前,configure
或者cmake
必须指定要用于构建过程的主机。(可选)指定斜杠后的同时作业数(默认为4):
export DISTCC_HOSTS='localhost/4 192.168.1.2/8 192.168.1.3/8'
使编译器使用distcc:
export PATH="/usr/lib/distcc:$PATH"
现在configure
或cmake
应用程序并使用以下命令进行构建:
make -j$(distcc -j)
请注意,如果您/usr/lib/distcc
在PATH中输入了两次,它将失败。确保/usr/lib/distcc
在您的服务器中仅设置一次PATH
。
有关更多详细信息,请参见distcc(1)和distccd(1)的手册页。
distccd --user nobody
。否则,它将在执行它的用户下运行。