Ⅰ buildroot成功后如何编译Qt应用程序
首先得把我们在X86机上调好的程序进行交叉编译,如果在X86上都没有通过的话。。那就不用交叉编译了,(肯定是通不过的),还是到正题吧,设置好环境变量,我们用以用echo 来查看环境变量,echo $TMAKEPATH ,如果返回的不是.../qws/linux-arm-g++ 的字符的话,我们一定得从新设置,
export TMAKEPATH=/tmake 的安装路径/qws/linux-arm-g++ ,同时QTDIR一定得要指定QTE的安装路径,设置过程如下:
export QTDIR=...../qt-2.3.7
以上环境设置好后,我们可以使用tmake来生成Makefile,注意这里我们是用tmake,而不是用qmake(注意),tmake工具在tmake包里面。 具体做法,我们可以在命令行下打:
tmake -o Makefile 工程名.pro
这样我们就新生成了一个Makefile文件,下一步,我们要打开这个文件,做一些小的修改
1: 将LINK=arm-linux-gcc 改为:LINK=arm-linux-g++
2:将LIBS=$(SUBLIBS) -L$(QTDIR)/lib -lm -lqte这句话改为:
LIBS=$(SUBLIBS) -L/opt/gcc-2.3.2-glibc-3.3.2/lib -L$(QTDIR)/lib -lm -lqte
加上你的交叉编译的库。
最后我们可以make了,一个可以在您的板子上可以运行的二进制文件产生了。linux
Ⅱ 如何编译openwrt,无线默认打开和修改SSID名称
在buildroot里添加一个files文件夹,然后里面的新建etc文件夹,在etc里新建config文件夹,在
<buildroot>/etc/config文件夹里放进你配置好的wireless文件
这是在你的设备处于官方支持的列表的前提下(固件能从官方源码直接编译)。市面上各种图便宜改来改去的你要会自己修改源码才可以
Ⅲ buildroot第一次编译成功,增加包后编译失败
没缺罩有切换成管理团宽员模式。通过查伏或闹看编译buildroot系统使用说明书,用户在使用编译buildroot系统时,要切换成管理员模式进行编译代码,buildroot第一次编译成功,增加包后编译失败是没有切换成管理员模式。只需切换成管理员模式即可恢复编译。buildroot是Linux平台上一个构建嵌入式Linux系统的框架。
Ⅳ 在ubuntu 10.04下编译buildroot-v23434提示stdio.h:286: error: expected declaration specifiers错误
下载buildroot稳定版本V2012.02试试
Ⅳ buildroot构建根文件系统
Buildroot是Linux平台上一个构建嵌入式Linux系统的框架。整渣渗个Buildroot是由Makefile脚本和Kconfig配置文件构成的。本文孝迹使用buildroot为freescale imx287 开发板制作根文件系统。
参考 https://www.cnblogs.com/kele-dad/p/8231434.html
Buildroot本身提供构建流程的框架,开发者按照格式写脚本,提供必要的构建细节,配置整个系统,最后自动构建出你的系统。
1.主板外观及基本接口分布
2.硬件资源
查看buildroot包含的开发板配置
选择imx28默认配置
编译完成,在 output 目录下可以得到生成的文件系统和镜像文件
在images目录下有烧录镜像文件
1)增加/dev/null 文件
Buildroot 编译后,生成的文件系统中通常没有/dev/null 文件,而系统启动通常是需要的,可以自行创建:
2)增加/dev/console文件
对应于System configuration-“Run a gretty after root”选择的调试端口
3)再次编译builtroot
将生成的rootfs.tar.bz2文件或rootfs.ubifs文件烧录到处理器,进入系统后即可以通过shell命令操作,已有的shell命令参考output/bin/目录下的链巧梁并接文件。
开机成功进入根文件系统
因为在System configuration中把root passwd设置为root,所以用户名和密码都是root。
Ⅵ 求助,请问这个板子该如何自己编译openwrt
如薯此果你只是要编译一个自定义的固件(默认带什么软件,不带旦吵什么软件,自定义默认的配置等等),那推荐你用ImageBuilder,简单快速,省心省力 你要是需要自己开发软件包,用OpenWRT的SDK,数迟迅直接出ipk文件 要完全重写就buildroot
Ⅶ linux编译内核步骤
一、准备工作
a) 首先,你要有一台PC(这不废话么^_^),装好了Linux。
b) 安装好GCC(这个指的是host gcc,用于编译生成运行于pc机程序的)、make、ncurses等工具。
c) 下载一份纯净的Linux内核源码包,并解压好。
注意,如果你是为当前PC机编译内核,最好使用相应的Linux发行版的源码包。
不过这应该也不是必须的,因为我在我的Fedora 13上(其自带的内核版本是2.6.33.3),就下载了一个标准的内核linux-2.6.32.65.tar.xz,并且顺利的编译安装成功了,上电重启都OK的。不过,我使用的.config配置文件,是Fedora 13自带内核的配置文件,即/lib/moles/`uname -r`/build/.config
d) 如果你是移植Linux到嵌入式系统,则还要再下载安装交叉编译工具链。
例如,你的目标单板CPU可能是arm或mips等cpu,则安装相应的交叉编译工具链。安装后,需要将工具链路径添加到PATH环境变量中。例如,你安装的是arm工具链,那么你在shell中执行类似如下的命令,假如有类似的输出,就说明安装好了。
[root@localhost linux-2.6.33.i686]# arm-linux-gcc --version
arm-linux-gcc (Buildroot 2010.11) 4.3.5
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for ing conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
注:arm的工具链,可以从这里下载:回复“ARM”即可查看。
二、设置编译目标
在配置或编译内核之前,首先要确定目标CPU架构,以及编译时采用什么工具链。这是最最基础的信息,首先要确定的。
如果你是为当前使用的PC机编译内核,则无须设置。
否则的话,就要明确设置。
这里以arm为例,来说明。
有两种设置方法():
a) 修改Makefile
打开内核源码根目录下的Makefile,修改如下两个Makefile变量并保存。
ARCH := arm
CROSS_COMPILE := arm-linux-
注意,这里cross_compile的设置,是假定所用的交叉工具链的gcc程序名称为arm-linux-gcc。如果实际使用的gcc名称是some-thing-else-gcc,则这里照葫芦画瓢填some-thing-else-即可。总之,要省去名称中最后的gcc那3个字母。
b) 每次执行make命令时,都通过命令行参数传入这些信息。
这其实是通过make工具的命令行参数指定变量的值。
例如
配置内核时时,使用
make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig
编译内核时使用
make ARCH=arm CROSS_COMPILE=arm-linux-
注意,实际上,对于编译PC机内核的情况,虽然用户没有明确设置,但并不是这两项没有配置。因为如果用户没有设置这两项,内核源码顶层Makefile(位于源码根目录下)会通过如下方式生成这两个变量的值。
SUBARCH := $(shell uname -m | sed -e s/i.86/i386/ -e s/sun4u/sparc64/ \
-e s/arm.*/arm/ -e s/sa110/arm/ \
-e s/s390x/s390/ -e s/parisc64/parisc/ \
-e s/ppc.*/powerpc/ -e s/mips.*/mips/ \
-e s/sh[234].*/sh/ )
ARCH?= $(SUBARCH)
CROSS_COMPILE ?=
经过上面的代码,ARCH变成了PC编译机的arch,即SUBARCH。因此,如果PC机上uname -m输出的是ix86,则ARCH的值就成了i386。
而CROSS_COMPILE的值,如果没配置,则为空字符串。这样一来所使用的工具链程序的名称,就不再有类似arm-linux-这样的前缀,就相当于使用了PC机上的gcc。
最后再多说两句,ARCH的值还需要再进一步做泛化。因为内核源码的arch目录下,不存在i386这个目录,也没有sparc64这样的目录。
因此顶层makefile中又构造了一个SRCARCH变量,通过如下代码,生成他的值。这样一来,SRCARCH变量,才最终匹配到内核源码arch目录中的某一个架构名。
SRCARCH := $(ARCH)
ifeq ($(ARCH),i386)
SRCARCH := x86
endif
ifeq ($(ARCH),x86_64)
SRCARCH := x86
endif
ifeq ($(ARCH),sparc64)
SRCARCH := sparc
endif
ifeq ($(ARCH),sh64)
SRCARCH := sh
endif
三、配置内核
内核的功能那么多,我们需要哪些部分,每个部分编译成什么形式(编进内核还是编成模块),每个部分的工作参数如何,这些都是可以配置的。因此,在开始编译之前,我们需要构建出一份配置清单,放到内核源码根目录下,命名为.config文件,然后根据此.config文件,编译出我们需要的内核。
但是,内核的配置项太多了,一个一个配,太麻烦了。而且,不同的CPU架构,所能配置的配置项集合,是不一样的。例如,某种CPU的某个功能特性要不要支持的配置项,就是与CPU架构有关的配置项。所以,内核提供了一种简单的配置方法。
以arm为例,具体做法如下。
a) 根据我们的目标CPU架构,从内核源码arch/arm/configs目录下,找一个与目标系统最接近的配置文件(例如s3c2410_defconfig),拷贝到内核源码根目录下,命名为.config。
注意,如果你是为当前PC机编译内核,最好拷贝如下文件到内核源码根目录下,做为初始配置文件。这个文件,是PC机当前运行的内核编译时使用的配置文件。
/lib/moles/`uname -r`/build/.config
这里顺便多说两句,PC机内核的配置文件,选择的功能真是多。不编不知道,一编才知道。Linux发行方这样做的目的,可能是想让所发行的Linux能够满足用户的各种需求吧。
b) 执行make menuconfig对此配置做一些需要的修改,退出时选择保存,就将新的配置更新到.config文件中了。
注
Ⅷ buildroot怎么判断配置好的包是否编译成功
在 Buildroot 中,可以通过以下步骤判断配置好的包是否编译手尺桐成功:
进入 Buildroot 的输出目录:
sh
Copy code
cd <path_to_buildroot>/output
查看对应包的毕坦编译状态:
sh
Copy code
ls -al packages/<package_name>/
如果包已经编译成功,会生困碰成对应的可执行文件、库文件等。
3. 运行测试:
如果包有提供测试用例,可以通过以下命令运行测试:
sh
Copy code
make <package_name>-test
如果测试通过,说明包已经编译成功。
4. 运行示例程序:
如果包有提供示例程序,可以通过以下命令编译并运行示例程序:
sh
Copy code
make <package_name>-example
./output/target/usr/bin/<example_program>
如果示例程序能够正常运行,说明包已经编译成功。
总之,在 Buildroot 中,可以通过查看包的编译状态、运行测试、运行示例程序等方式来判断包是否编译成功。
Ⅸ 使用buildroot编译arm架构的linux内核,使其支持usb摄像头,并使用qemu虚拟运行
#没有吧ext* 和 VFS编进去吧
cd/usr/src/linux
makemenuconfig
#选择ext4和VFS,在FileSystem里,很好找
make;makemole_install;makeinstall
Ⅹ buildroot 添加一个文件夹单独编译
你好,指定压缩包内核做头文件,再指定压缩包内核做编译源码,buildroot是Linux平台宽锋上一个构建嵌入式Linux系统的框架。整个Buildroot是由Makefile脚本和郑巧做Kconfig配置文件构成的。你可以和编译Linux内核一样,通过buildroot menuconfig配置,编译出喊衡一个完整的可以直接烧写到机器上运行的Linux系统软件(包含boot、kernel、rootfs以及rootfs中的各种库和应用程序)。