IMX Hello World
From Variscite Wiki
VAR-SOM-MX6 - Hello World
Reference
Yocto Project Application Developer's Guide 2.0
Toolchain installation for out of Yocto builds
Build the toolchain by:
$ bitbake meta-ide-support $ bitbake meta-toolchain
In your Yocto build directory. The output will be located at tmp/deploy/sdk/. On a 64 bit Ubuntu you will get:
sdk/poky-eglibc-x86_64-meta-toolchain-cortexa9hf-vfp-neon-toolchain-1.8.sh
Install the tools by running:
$ tmp/deploy/sdk/poky-eglibc-x86_64-meta-toolchain-cortexa9hf-vfp-neon-toolchain-1.8.sh
Reply to all defaults 'y'
The toolchain name depend on your build machine and may change.
hello World C
$ mkdir ~/applications $ cd ~/applications $ gedit hello.c & #include <stdio.h> int main(int argc, char **argv) { printf("Hello World\n"); return(0); } Compile: $ source /opt/poky/1.8/environment-setup-armv7a-vfp-neon-poky-linux-gnueabi $ $CC -o hello hello.c Find you target ipaddr. Copy: $ scp hello root@192.168.1.130:~/ On Target: Fix an issue with the library happen in poky version 1.8 $ ln -s /lib/ld-linux-armhf.so.3 /lib/ld-linux.so.3 Run: root@var-som-mx6:~# ./hello Hello World
Hello with BitBake
File hello_0.0.bb
- @DESCRIPTION: Variscite Hello world example"
- @MAINTAINER: Ron Donio <ron.d@variscite.com>
- http://www.variscite.com
- support@variscite.com
PR = "r0" LICENSE = "GPLv2"
S = "${WORKDIR}"
LIC_FILES_CHKSUM = "file://hello.c;md5=360191807313df2e50fded385dd7532b" SRC_URI = "file://hello.c"
do_compile() {
${CC} ${CFLAGS} ${LDFLAGS} -o hello hello.c
}
do_install() {
install -d ${D}${bindir}/ install -m 0755 ${S}/hello ${D}${bindir}/
}
FILES_${PN} = "${bindir}/hello"
/*
* Variscite sample Hello World example */
File hello.c
- include <stdio.h>
int main () {
printf("Hello World<>\n"); return 0;
}