linux 交叉编译出现的问题
描述一下我的问题吧:
在宿主机上交叉编译出来一个很简单的程序hello.c :arm-none-linux-gnueabi-gcc hello.c -o hello
把hello 放到我的pandaboard 上不能运行 ./hello 出来的效果是./hello is no a directory 很无语啊
然后我在宿主机上面开始静态编译arm-none-linux-gnueabi-gcc hello.c -static -o hello
编出来一个很大的hello 程序,放到pandaboard上面居然能够跑起来
同样我又在我的pandaboard上面用这个ubuntu 上面的gcc 自己编译一个hello程序,同样是可以运行的
我觉得主要问题出现自库上面,
所有在两台机器上面都用 readelf -d hello 查看动态编译的程序,发现在宿主机上编译的多了一个libgcc_s.so.1的库,在网上查了半天说是跟arm-linux-gcc 非常相关的一个库,很好奇怎么不用这个库完成编译的扔到子板上可以运行
貌似问题说得不怎么清楚了,先记录下来吧!