我在 docker 中构建 onlyoffice 时遇到了这个编译错误。有人知道原因是什么吗?我正在使用 root 用户启动的 Docker,make.py 可以确认它已执行...
我在 docker 中构建 onlyoffice 时遇到了这个编译错误。有人知道原因是什么吗?我正在使用 root 用户启动的 Docker,make.py 可以确认它具有执行权限。
这是我的编译环境:
python3./automate.py 服务器
起源/发布/v8.1.0
Linux 版本 4.4.0-186-generic (buildd@lcy01-amd64-002) (gcc 版本 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) ) #216-Ubuntu SMP 2020 年 7 月 1 日星期三 05:34:05 UTC
主版本
FROM ubuntu:16.04
ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# Update the sources.list to use the mirror closet to you
RUN sed -i 's|http://archive.ubuntu.com/ubuntu/|http://free.nchc.org.tw/ubuntu/|g' /etc/apt/sources.list
RUN apt-get -y update && \
apt-get -y install software-properties-common && \
add-apt-repository ppa:openjdk-r/ppa && \
apt-get -y update && \
DEBIAN_FRONTEND=noninteractive apt-get -y install python \
python3 \
sudo \
openjdk-11-jdk \
openjdk-11-jdk-headless \
openjdk-11-jre \
openjdk-11-jre-headless \
git \
openssh-client
RUN rm /usr/bin/python && ln -s /usr/bin/python2 /usr/bin/python
VOLUME ["/work"]
WORKDIR /work
# Set the default command
CMD ["bash"]
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b <new-branch-name>
HEAD is now at be6df45... [|attr] crash && memory leak
Cloning into 'hunspell'...
Note: checking out '8a2fdfe5a6bb1cbafc04b0c8486abcefd17ad903'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b <new-branch-name>
HEAD is now at 8a2fdfe... replace archaic &std::vector::operator[0] with c++11 std::vector::data
/bin/sh: 1: ./make.py: Permission denied
[fetch & build]: boost
[fetch & build]: cef
[fetch & build]: icu
[fetch & build]: openssl
gn gen out.gn/linux_64 --args="v8_static_library=true is_component_build=false v8_monolithic=true v8_use_external_startup_data=false use_custom_libcxx=false treat_warnings_as_errors=false target_cpu=\"x64\" v8_target_cpu=\"x64\" is_debug=false is_clang=true use_sysroot=false"
[fetch & build]: hunspell
[fetch & build]: harfbuzz
Error (./make.py): 126
install dependencies...
---------------------------------------------
build branch: release-v8.1.0
---------------------------------------------
---------------------------------------------
build modules: server
---------------------------------------------
Error (./make.py): 1
root@2148240c5bd1:/work/build_tools/tools/linux# ls
虽然尝试使用“chmod -X make.py”重新添加对“make.py”文件的权限,但对我来说不起作用
我正在运行 Linux (Pop!_OS),并尝试使用 mpi 运行我的程序。但是,它不适用于 python 脚本(使用 mpi4py),但它对 C 脚本有用。(使用 mpi.h)为了测试它,我...
我正在运行 Linux (Pop!_OS),并尝试使用 mpi 运行我的程序。但是,
它不适用于 Python 脚本(使用 mpi4py)
但它对 有点 用。(使用 mpi.h)
为了测试它,我运行了一个简单的程序,程序应该输出 hello {rank} out of {size}
。其中 rank
是将打印该行的当前处理器, size
是使用的处理器总数。
我的程序: hello.py
### hello.py ###
from mpi4py import MPI
MPI = MPI.COMM_WORLD
size = comm.size
rank = comm.rank
print(f"{rank} of {size}")
这是我得到的输出 mpirun -np 4 python3 hello.py
hwloc/linux: Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
上述信息重复了 8 次,最后是以下内容
hello 0 of 1
hello 0 of 1
hello 0 of 1
hello 0 of 1
我有一个用 C 语言编写的类似程序, hello.c
/*hello.c*/
#include <stdio.h>
#include <mpi.h>
int main(int argc, char *argv[]){
int size, rank;
MPI_Init(&argc, &argv);
MPI_Comm_size(MPI_COMM_WORLD, &size);
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
printf("Hello %d out of %d\n", rank, size);
MPI_Finalize();
}
使用 mpicc 编译然后运行: mpirun -np 4 ./hello
。我收到相同的错误消息,但只有一次,最后输出:
hwloc/linux: Ignoring PCI device with non-16bit domain.
Pass --enable-32bits-pci-domain to configure to support such devices
(warning: it would break the library ABI, don't enable unless really needed).
Hello 0 out of 4
Hello 2 out of 4
Hello 3 out of 4
Hello 1 out of 4
虽然这给出了所需的输出,但我不知道如何处理提示 hwloc/linux...
。我想修复它,以便它也可以正确运行 mpi4py。
更多详细信息: