解决交叉编译产生的程序放到目标板上运行时出现Segmentation fault (core dumped)

发布时间 2023-10-03 20:53:22作者: MaxBruce

原文:https://blog.csdn.net/qq_36219010/article/details/100163134

在PC机上编译一段程序:

arm-linux-gnueabihf-gcc -o hello hello.c
这里产生 hello文件用FTP传输到目标板上(树莓派3B+),运行时出现:

报告段错误。
后来我又试了不输出指定的文件名:

arm-linux-gnueabihf-gcc hello.c


这里产生的a.out用fpt传输过去居然能运行:

为这个情况折腾了好久,后面终于解决了,原来是FTP传输的事,搞了一天飞长恼火,快没耐心了fuc×××都冒出来了。
后来一想会不会是中间传输过程出了问题,我继续
输出指定文件为hello.out:

arm-linux-gnueabihf-gcc -o hello.out hello.c

ftp传输过去,这次居然能运行了```!!!:
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190830173908561.png)
这下开始怀疑是ftp传输过程中把我的文件给修改了。。。
# 解决办法

修改树莓派端ftp配置文件:


sudo vim /etc/vsftpd.conf
将下面3项开启:

``现在编译产生目标文件hello:
传输到树莓派运行成功:

————————————————
版权声明:本文为CSDN博主「湘南第一刀」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_36219010/article/details/100163134