2014-10-31 332 views
0

我是一个beaglebone新生。我需要你的帮助。我在eclipse中的64位xubuntu以及代码块环境中安装了交叉编译器工具链arm-linux-gnueabi。我制作了一个hello world程序,使用eclipse,使用终端,使用Codeblocks以3种方式进行交叉编译。但是当我在Beaglebone中运行我的可执行文件时,我收到错误,说不能加载共享文件libstdC++ 6.so.6:找不到文件。Beaglebone交叉编译

虽然我已经安装了最新的libstdC++ 6,ia32-libs并进行了配置。我使用ssh登录我的Beaglebone。我的所有项目都因此而悬而未决。请建议解决方案。我会感谢你。我已经根据derek molloy c,C++视频工作,但仍然有错误。我认为这是因为beaglebone和laptop分别在32位和64位之间的区别。

+1

看看@这可能会解决你的问题http://stackoverflow.com/questions/18898649/linux-cant-find-dynamically-linked-applications/18942117#18942117,复制你的工具链有'libstdC++ 6 .so.6'到你的目标rootfs – 2014-10-31 09:30:13

回答

0

我以为abi使用的是arm-linux-gnueabi,但是当我在我的beagleboard上运行abi版本的细节时,我发现它是arm-linux-gnueabihf。所以我只是更换了编译器,然后它能够​​找到所有的文件。

0

你真的在你的BB上安装了libstdC++ 6,ia32-libs吗?它看起来像x86 lib。看看Buildroot。它已经提供了BB目标,所以你可以很快得到你的基本rootfs。然后只需添加所需的软件包即可完成。当使用像BR这样的发行版时,主要的好处是,你需要rootfs中的所有依赖项,并在microSD卡上刻录。 BR还提供Eclipse plugin