8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png

/bin/sh: 1: ./make.py: 权限被拒绝

ATK 2月前

102 0

我在 docker 中构建 onlyoffice 时遇到了这个编译错误。有人知道原因是什么吗?我正在使用 root 用户启动的 Docker,make.py 可以确认它已执行...

我在 docker 中构建 onlyoffice 时遇到了这个编译错误。有人知道原因是什么吗?我正在使用 root 用户启动的 Docker,make.py 可以确认它具有执行权限。

这是我的编译环境:

1.重现问题的步骤:

python3./automate.py 服务器

2.build_tools基础repo版本:

起源/发布/v8.1.0

3.操作系统:

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

4.编译器版本:

主版本

5.docker文件

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”文件的权限,但对我来说不起作用

帖子版权声明 1、本帖标题:/bin/sh: 1: ./make.py: 权限被拒绝
    本站网址:http://xjnalaquan.com/
2、本网站的资源部分来源于网络,如有侵权,请联系站长进行删除处理。
3、会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。
4、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
5、站长邮箱:yeweds@126.com 除非注明,本帖由ATK在本站《ubuntu》版块原创发布, 转载请注明出处!
最新回复 (0)
  • 我在装有 Ubuntu 操作系统的机器上安装了 Docker。当我运行:sudo docker run hello-worldAll 时没问题,但我想隐藏 sudo 命令以使命令更短。如果我写命令

    我在装有 Ubuntu 操作系统的机器上安装了 Docker。
    当我跑步时:

    sudo docker run hello-world
    

    一切正常,但我想隐藏命令 sudo 以使命令更短。
    如果我写命令时不带 sudo

    docker run hello-world
    

    显示以下内容:

    docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.35/containers/create: dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'.
    

    当我尝试运行时也会发生同样的事情:

    docker-compose up
    

    我该如何解决这个问题?

  • 我在 Unity 中假设角色在动画中向左移动或在途中停止。我使用动画功能的录制功能将其设置为这样做。我制作了动画......

    我在 Unity 中假设角色在动画中向左移动或在途中停止。我使用动画函数的录制功能将其设置为这样做。我把动画做成了一个混合树,以便在这些情况下左右旋转,但效果不好。我看不到向左旋转的图片。

     private void LateUpdate()
        {
            // Update animator
            anim.SetFloat("DirX", movement.x);
            anim.SetFloat("DirY", movement.y);
            anim.SetBool("Idle", movement.magnitude == 0); 
        }
    

    这是我要修改的代码。我给混合树的每个动画都赋予了此代码的值,(例如:左 -1、右 +1,DirX 的浮点值)在动画预览中,即使 Sprite 被翻转,它在实际运行时也不会按预期移动。

    这是我的全部代码。下面是完整的代码,所以最好不要分析它。

    using System.Collections;
    using System.Collections.Generic;
    using UnityEngine;
    
    
    public class PlayerManager : MonoBehaviour
    {
        Coroutine playerMoveRoutine;
    
        public float speed = 500f;
        public float runSpeed = 200f;
    
        public GameObject player;
        public GameObject rightArrow;
        public GameObject leftArrow;
        public GameObject[] backgrounds;
        public GameObject[] Borders;
    
        private Vector2 movement; //Use the direction key to move
        private bool isRunning;
        private Animator anim;
        private Rigidbody2D rb;
    
        private void Start()
        {
            anim = player.GetComponent<Animator>();
            rb = player.GetComponent<Rigidbody2D>();
        }
    
        
        private void Update()
        {
            // Get input
            movement.x = Input.GetAxisRaw("Horizontal");
            movement.y = Input.GetAxisRaw("Vertical");
            isRunning = Input.GetKey(KeyCode.LeftShift) || Input.GetKey(KeyCode.RightShift);
    
            
            if (Input.GetMouseButtonDown(0)) // Left mouse click detection
            {
                Vector2 worldPoint = Camera.main.ScreenToWorldPoint(Input.mousePosition);
                RaycastHit2D hit = Physics2D.Raycast(worldPoint, Vector2.zero);
    
                if (hit.collider != null)
                {
                    
                    if (hit.collider.gameObject == rightArrow)
                    {
                        int clickX = 1;
                        // If we're already moving, cancel that coroutine so the two don't execute at the same time
                        if (playerMoveRoutine != null)
                        {
                            StopCoroutine(playerMoveRoutine);
                        }
                        playerMoveRoutine = StartCoroutine(ArrowClick(clickX));
    
                    }
                    else if (hit.collider.gameObject == leftArrow)
                    {
                        int clickX = -1;
                        // If we're already moving, cancel that coroutine so the two don't execute at the same time
                        if (playerMoveRoutine != null)
                        {
                            StopCoroutine(playerMoveRoutine);
                        }
                        playerMoveRoutine = StartCoroutine(ArrowClick(clickX));
                    }
                }
            }
        }
    
        public IEnumerator ArrowClick(int _clickX)
        {
            float speed = 200;
            Vector2 target = new Vector2(500 * _clickX, 0);
            while (Vector2.Distance(player.transform.position, target) > 0.05f)
            {
                // Changed from hardcoded "10" to rather be based on the "Time.deltaTime": enables framerate independence (player will move the same amount in a second, regardless of FPS)
                player.transform.position = Vector2.MoveTowards(player.transform.position, target, speed * Time.deltaTime);
    
                // Tells the game to wait a frame before continuing execution
                yield return null;
            }
        }
    
    
        private void FixedUpdate()
        {
            // Move the character
            float currentSpeed = isRunning ? speed * runSpeed : speed;
            Vector2 velocity = movement.normalized * currentSpeed;
            rb.MovePosition(rb.position + velocity * Time.fixedDeltaTime);
        }
    
        private void LateUpdate()
        {
            // Update animator
            anim.SetFloat("DirX", movement.x);
            anim.SetFloat("DirY", movement.y);
            anim.SetBool("Idle", movement.magnitude == 0);
        }
    }
    

    这是我的照片

    enter image description here

    enter image description here

    enter image description here

    enter image description here

  • 我正在尝试使用 SciDet 函数计算矩阵的行列式,但显然它刚刚被删除。我如何在另一个 Scilab 中通过 C 代码计算矩阵的行列式...

    代码 C 在 Scilab 中计算矩阵的行列式

    代码:

    #include "api_scilab.h" // Header file for using SciLab API functions
    #include "Scierror.h" // Header file for handling SciLab errors
    #include "BOOL.h" // Header file for using BOOL type
    #include "localization.h" // Header file for string localization
    
    static const char fname[] = "det"; // Function name
    
    int sci_det(scilabEnv env, int nin, scilabVar* in, int nopt, scilabOpt* opt, int nout, scilabVar* out)
    {
        int i = 0; // Loop variable
        int n = 0; // Dimension of the system
        double* A = NULL; // Coefficient matrix
        int info; // Error code variable
        double determinant = 1.0; // Determinant
    
        /* Check the number of input and output arguments */
        if (nin != 1 || nout != 1) {
            Scierror(77, _("%s: Wrong number of input or output arguments: 1 input and 1 output expected.\n"), fname); // Error message output
            return 1; // Return 1 in case of error
        }
    
        /* Check the types of input arguments */
        if (scilab_isDouble(env, in[0]) == 0 || scilab_isMatrix2d(env, in[0]) == 0 ||
            scilab_isComplex(env, in[0]) == 1) {
            Scierror(999, _("%s: Wrong type for input argument. Double matrix expected.\n"), fname); // Error message output
            return 1; // Return 1 in case of error
        }
    
        /* Get the dimensions of the coefficient matrix */
        int rowA = 0, colA = 0;
        scilab_getDim2d(env, in[0], &rowA, &colA); // Get matrix dimensions
        n = rowA; // Store the dimension
    
        /* Check that matrix A is square */
        if (rowA != colA) {
            Scierror(999, _("%s: Matrix of coefficients must be square.\n"), fname); // Error message output
            return 1; // Return 1 in case of error
        }
    
        /* Get data from the input argument */
        scilab_getDoubleArray(env, in[0], &A); // Get data from the input matrix
    
        /* Calculate the determinant */
        // Your determinant calculation code here
    
        return 0; // Return 0 upon successful execution
    }
    

    编译:

    files = ["foo6.c"];
    ilib_build('build_lib',['det','sci_det','csci6'],files,[]);
    --> exec("loader.sce"); 
    Failed reference for dynamic library '/home/zoow/Рабочий стол/ScilabAPI/Matrix/Test//libbuild_lib.so'.
    There's been a mistake: /home/zoow/Рабочий стол/ScilabAPI/Matrix/Test//libbuild_lib.so: undefined symbol: sciDet
    Failed reference for dynamic library '/home/zoow/Рабочий стол/ScilabAPI/Matrix/Test//libbuild_lib.so'.
    There's been a mistake: /home/zoow/Рабочий стол/ScilabAPI/Matrix/Test//libbuild_lib.so: undefined symbol: sciDet
    on line 15 of the executable /home/zoow/Рабочий стол/ScilabAPI/Matrix/Test/loader.sce
    
    addinter: The shared archive has not been downloaded: (null)
    

    我可以在代码中计算行列式,但我需要在 Scilab 中计算并将值传递给 C .

  • 我正在运行 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。

    更多详细信息:

    • 我有双启动系统,另一个操作系统是位于单独 SSD 上的 Windows。相同的程序在 Windows 上可以正常运行。
  • 我正在开发一款自上而下的 2D 游戏,我希望玩家(即白色圆圈)在按下 WASD 时逐个网格地在瓷砖地图上行走,并在前方有墙壁或敌人时停止

    我正在开发一款自上而下的 2D 游戏,我希望玩家(即白色圆圈)在按下 WASD 时逐个网格地在 Tilemap 上行走,并在行走方向前方有墙壁或敌人时停止。问题是,即使我在玩家和敌人上都添加了 box collider 2d 和 rigidbody,从玩家向前进方向一个街区外投射的射线也永远不会击中敌人,因此玩家只会穿过敌人。但是,射线确实可以检测到启用了 Tilemap collider 2d 的墙壁。

    ( https://i.sstatic.net/DKyy2u4E.png )

    起初我以为是当玩家和敌人站在一起时碰撞器有点重叠,所以我将玩家和敌人的碰撞器的尺寸从 1 减小到 0.8,但它仍然不起作用。

  • \'没有按预期移动\' 是假设:\'当你向左移动或停止时\',即\'当 DirX 的值为 -1 时,或者当 DirX 的值为 -1 然后变为 0 时\' 结果:定义角色\'倒立时不会移动\'。(不受 DirY 值的影响。)综上所述,我想要的只是玩家在向左移动时向左看。

  • 请使用 scilab.discourse.group(您在那里已经有一个新问题,并且 Scilab 专家也在那里)。

  • @GillesGouaillardet 哦,你也回答了最后一个问题。我尝试重新安装它。但没有成功。我得到了同样的错误。

  • 为什么要使用射线投射来处理碰撞?如果正确设置碰撞器的大小,它们将发生碰撞并停止移动。

  • 引用 11

    请将代码作为文本而不是图像添加。我们无法复制粘贴图像,而且屏幕阅读器无法处理它们。

  • @kichik 抱歉,这只是我的打字错误。实际上,执行 chmod +X 也没有任何效果。

返回
作者最近主题: