我为buildroot工作。我的目标工作GUI在Gtk3.0
和Gstreamer1.0
的buildroot上。我使用Olinuxino A13,所以我用代码块在上面写了GUI代码(Gtk3.0你好世界示例)。我用Debian Wheezy。我要将这段代码从Debian wheezy转移到buildroot。
我尝试过:
我转移了由代码块创建的/path_to_proectfile/bin/Debug/my_program.my_program
。我在终端和代码工作上写了./my_program
。我已将此文件传输到buildroot,但是./my_program
无法正常工作。它返回No such file or directory
错误。
我认为问题可能正在编译,并尝试在终端上编译。我再次使用gcc -o my_program main.c 'pkg-config --cflags --libs gtk+-3.0'
在Debian Wheezy终端上工作。在我转移到buildroot之后,结果没有改变。我尝试了类似cc
,arm-linux-gnueabi-gcc
等类似的编译方式,但每次No such file or directory
出错。
最后,当我不使用gtk库(仅使用printf Hello World
)时,我看到了Hello world。当我添加gtk库时,返回No such file or directory
错误。有什么建议吗?
答案 0 :(得分:2)
您需要使用相应的buildroot工具链交叉编译程序。看来您已经转移了针对其他libc构建的二进制文件(这会产生“无此类文件或目录”错误)。
可以通过将CC设置为"path_to_buildroot_output/host/bin/arm-linux-*-gcc"
来使用具有正确libc的buildroot交叉编译器(确切名称取决于您选择的工具链选项)。