解决 linux下编译make文件报错“binbash^M: 坏的解释器:没有那个文件或目录” 问题

    xiaoxiao2022-06-30  56

        PS背景:我在公司做sdk 的pc端开发,所以经常会在win下编译通过之后跑到linux下再运行一次已确保能支持多平台。

            今儿在win下跑完一程序,然后放到linux下跑的时候,我用指令:

    [plain] view plain copy sudo ./build.sh  

    但是却没有任何反应。于是我换了指令,用

    [plain] view plain copy chmod u+x build.sh  ./build.sh   报错 “build.sh   /bin/bash^M: 坏的解释器:没有那个文件或目录 ”。 以前遇到这个问题,换了几种编译方法就解决了,单这次还是不行,于是又换: bash build.sh

    编译的时候报错 :

    后来一想 \r 这个符号怎么出现的,于是各种百度,才知道原因可能是因为我在win下操作的时候,修改到了此文件。

            在win下编辑的时候,换行结尾是\n\r , 而在linux下 是\n,所以才会有 多出来的\r

            用指令:

    [plain] view plain copy sed -i 's/\r$//' build.sh  

            会把 build.sh 中的\r 替换成空白!

            再次编译!成功!!

    PS:写在后面

    参考文章:http://www.educity.cn/wenda/153393.html

    编译android openssl动态库:

    https://wiki.openssl.org/index.php/Android#Install_the_OpenSSL_Library

    转载请注明原文地址: https://ju.6miu.com/read-1125617.html

    最新回复(0)