openwrt中的工具链?

Toolchain in openwrt?

我已经在 beaglebone black 上安装了 openwrt。我发现它没有 gccg++ 或任何其他 compiler/toolchain。

如何在 openwrt 中为 C 和 C++ 安装编译器(最好是 g++)?

Openwrt默认是没有编译器的,因为很多时候你要在交叉编译环境下编译软件。 所以你可以在 "openwrt buildroot" 中找到 toolchain/gcc https://wiki.openwrt.org/doc/howto/build

但是, 如果你想在你的 Beaglebone 上编译任何源代码,你可以得到它“opkg install gcc”。

很难找到足够 space 在其中安装 gcc 的 AP。 gcc_xxx.ipk 的大小约为 20MB。通过键入 df -h 在 rootfs/overlay 中检查您的免费 space。如果你有足够的 space 使用以下内容修改你的 /etc/opkg.conf 文件(为你的 OpenWrt 版本修改 Chaos Calmer):

dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
src/gz chaos_calmer_base http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/base
src/gz chaos_calmer_packages http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/packages 
src/gz chaos_calmer_luci http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/luci              
src/gz chaos_calmer_routing http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/routing    
src/gz chaos_calmer_telephony http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/telephony
src/gz chaos_calmer_management http://downloads.openwrt.org/chaos_calmer/15.05/ar71xx/generic/packages/management

如果您没有足够的space,您将不得不cross-compile您的代码。

尽管如此,您可以通过键入

在通常大得多的 /tmp 内存中安装 gcc
opkg update
opkg install gcc -d ram

你会在 /tmp/usr/bin 中找到 gcc。请记住,一旦您重新启动路由器 gcc 就会消失,您将不得不重复所有过程(如果您将其安装在 ram 上)。