Linux–“bad interpreter”问题
1、问题原因:在Windows下进行编辑后拷贝到Linux下运行,不同的系统间编码格式造成的(Windows的文件结尾以\r\n来标识,而Linux格式的文件行尾则以\n来标识)
2、问题解决(3种):
1)vi setup.sh进入setup.sh后, 在底部模式下, 执行:set fileformat=unix后执行:x或者:wq保存修改。
2)直接执行sed -i “s/\r//” setup.sh来转化。
3)直接执行dos2unix setup.sh来转化。
dos2unix setup.sh 或者 busybox dos2unix setup.sh
3、查看文件格式的方法:
1)cat -A 文件名 从显示结果可以判断,dos格式的文件行尾为^M$
2)vi 文件名 打开文件,执行 : set ff,如果文件为dos格式在显示为fileformat=dos,如果是unxi则显示为fileformat=unix
3)od -t x1 文件名 如果看到输出内容中存在0d 0a的字符,那么文件是dos格式,如果只有0a,则是unix格式
另外一个问题
fatal error: sys/cdefs.h: No such file or directory
`sudo apt-get purge libc6-dev
sudo apt-get install libc6-dev
sudo apt-get install libc6-dev-i386
`
来源:oschina
链接:https://my.oschina.net/u/4414407/blog/4267389