https://www.openembedded.org/api.php?action=feedcontributions&user=Michaelfung&feedformat=atomOpenembedded.org - User contributions [en]2024-03-19T10:10:29ZUser contributionsMediaWiki 1.29.0https://www.openembedded.org/index.php?title=RAD_with_FPC/Lazarus&diff=3146RAD with FPC/Lazarus2010-11-11T13:27:10Z<p>Michaelfung: </p>
<hr />
<div>The Free Pascal Compiler and the Lazarus IDE are good alternatives for development.<br />
<br />
[[File:Lazarus-ide-1.png]]<br />
<br />
<br />
[[File:Lazarus-ide-2.png]]<br />
<br />
<br />
[[File:Lazarus-ide-3.png]]<br />
<br />
<br />
== Install FPC and Lazarus ==<br />
<br />
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM<br />
<br />
But the binutils part should be omitted and instead use the binutils built by OE.<br />
<br />
== Use OE built binutils ==<br />
<br />
Bake the binutils-cross-sdk:<br />
<br />
bitbake binutils-cross-sdk<br />
<br />
<br />
Install the baked ipk, eg. ''binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk'', on the host:<br />
<br />
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk<br />
<br />
<br />
Create links to the binutils programs:<br />
<br />
cd ~/lazarus/fpc/binutils<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar<br />
cat <<EOT > as<br />
#!/bin/sh<br />
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@<br />
EOT<br />
chmod 755 as<br />
<br />
<br />
Config fpc to use the binutils, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-XP/home/mike/lazarus/fpc/binutils/<br />
<br />
== Get target library files ==<br />
<br />
Copy the target library files from OE to the host:<br />
<br />
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi<br />
sudo mkdir -p {lib/gcc,usr/lib}<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/<br />
<br />
<br />
<br />
Config fpc to use the libraries, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=File:Lazarus-ide-3.png&diff=3145File:Lazarus-ide-3.png2010-11-11T13:24:04Z<p>Michaelfung: </p>
<hr />
<div></div>Michaelfunghttps://www.openembedded.org/index.php?title=File:Lazarus-ide-2.png&diff=3144File:Lazarus-ide-2.png2010-11-11T13:23:27Z<p>Michaelfung: </p>
<hr />
<div></div>Michaelfunghttps://www.openembedded.org/index.php?title=RAD_with_FPC/Lazarus&diff=3143RAD with FPC/Lazarus2010-11-11T13:22:53Z<p>Michaelfung: </p>
<hr />
<div>The Free Pascal Compiler and the Lazarus IDE are good alternatives for development.<br />
<br />
[[File:Lazarus-ide-1.png]]<br />
<br />
<br />
== Install FPC and Lazarus ==<br />
<br />
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM<br />
<br />
But the binutils part should be omitted and instead use the binutils built by OE.<br />
<br />
== Use OE built binutils ==<br />
<br />
Bake the binutils-cross-sdk:<br />
<br />
bitbake binutils-cross-sdk<br />
<br />
<br />
Install the baked ipk, eg. ''binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk'', on the host:<br />
<br />
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk<br />
<br />
<br />
Create links to the binutils programs:<br />
<br />
cd ~/lazarus/fpc/binutils<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar<br />
cat <<EOT > as<br />
#!/bin/sh<br />
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@<br />
EOT<br />
chmod 755 as<br />
<br />
<br />
Config fpc to use the binutils, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-XP/home/mike/lazarus/fpc/binutils/<br />
<br />
== Get target library files ==<br />
<br />
Copy the target library files from OE to the host:<br />
<br />
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi<br />
sudo mkdir -p {lib/gcc,usr/lib}<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/<br />
<br />
<br />
<br />
Config fpc to use the libraries, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc</div>Michaelfunghttps://www.openembedded.org/index.php?title=File:Lazarus-ide-1.png&diff=3142File:Lazarus-ide-1.png2010-11-11T13:19:12Z<p>Michaelfung: </p>
<hr />
<div></div>Michaelfunghttps://www.openembedded.org/index.php?title=RAD_with_FPC/Lazarus&diff=3141RAD with FPC/Lazarus2010-11-11T13:18:03Z<p>Michaelfung: /* Install FPC and Lazarus */</p>
<hr />
<div>The Free Pascal Compiler and the Lazarus IDE are good alternatives for development.<br />
<br />
<br />
== Install FPC and Lazarus ==<br />
<br />
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM<br />
<br />
But the binutils part should be omitted and instead use the binutils built by OE.<br />
<br />
== Use OE built binutils ==<br />
<br />
Bake the binutils-cross-sdk:<br />
<br />
bitbake binutils-cross-sdk<br />
<br />
<br />
Install the baked ipk, eg. ''binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk'', on the host:<br />
<br />
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk<br />
<br />
<br />
Create links to the binutils programs:<br />
<br />
cd ~/lazarus/fpc/binutils<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar<br />
cat <<EOT > as<br />
#!/bin/sh<br />
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@<br />
EOT<br />
chmod 755 as<br />
<br />
<br />
Config fpc to use the binutils, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-XP/home/mike/lazarus/fpc/binutils/<br />
<br />
== Get target library files ==<br />
<br />
Copy the target library files from OE to the host:<br />
<br />
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi<br />
sudo mkdir -p {lib/gcc,usr/lib}<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/<br />
<br />
<br />
<br />
Config fpc to use the libraries, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc</div>Michaelfunghttps://www.openembedded.org/index.php?title=RAD_with_FPC/Lazarus&diff=3140RAD with FPC/Lazarus2010-11-11T13:14:57Z<p>Michaelfung: /* Use OE built binutils */</p>
<hr />
<div>== Install FPC and Lazarus ==<br />
<br />
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM<br />
<br />
But the binutils part should be omitted and instead use the binutils built by OE.<br />
<br />
== Use OE built binutils ==<br />
<br />
Bake the binutils-cross-sdk:<br />
<br />
bitbake binutils-cross-sdk<br />
<br />
<br />
Install the baked ipk, eg. ''binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk'', on the host:<br />
<br />
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk<br />
<br />
<br />
Create links to the binutils programs:<br />
<br />
cd ~/lazarus/fpc/binutils<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar<br />
cat <<EOT > as<br />
#!/bin/sh<br />
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@<br />
EOT<br />
chmod 755 as<br />
<br />
<br />
Config fpc to use the binutils, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-XP/home/mike/lazarus/fpc/binutils/<br />
<br />
== Get target library files ==<br />
<br />
Copy the target library files from OE to the host:<br />
<br />
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi<br />
sudo mkdir -p {lib/gcc,usr/lib}<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/<br />
<br />
<br />
<br />
Config fpc to use the libraries, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc</div>Michaelfunghttps://www.openembedded.org/index.php?title=RAD_with_FPC/Lazarus&diff=3139RAD with FPC/Lazarus2010-11-11T13:13:36Z<p>Michaelfung: Created page with '== Install FPC and Lazarus == Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM But the binutils part should be omitted and instead use the binutils bui…'</p>
<hr />
<div>== Install FPC and Lazarus ==<br />
<br />
Reference: http://wiki.lazarus.freepascal.org/Setup_Cross_Compile_For_ARM<br />
<br />
But the binutils part should be omitted and instead use the binutils built by OE.<br />
<br />
== Use OE built binutils ==<br />
<br />
Bake the binutils-cross-sdk:<br />
<br />
bitbake binutils-cross-sdk<br />
<br />
<br />
Install the baked ipk, eg. ''binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk'', on the host:<br />
<br />
sudo dpkg --install --force-architecture binutils-cross-sdk_2.18-r13.1.6_i686-armv6-sdk.ipk<br />
<br />
<br />
Create links to the binutils programs:<br />
<br />
cd ~/lazarus/fpc/binutils<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ld ld<br />
ln -s /usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-ar ar<br />
cat <<EOT > as<br />
#!/bin/sh<br />
/usr/local/angstrom/arm/bin/arm-angstrom-linux-gnueabi-as -meabi=5 \$@<br />
EOT<br />
<br />
chmod 755 as<br />
<br />
<br />
Config fpc to use the binutils, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-XP/home/mike/lazarus/fpc/binutils/<br />
<br />
<br />
== Get target library files ==<br />
<br />
Copy the target library files from OE to the host:<br />
<br />
cd /usr/local/angstrom/arm/arm-angstrom-linux-gnueabi<br />
sudo mkdir -p {lib/gcc,usr/lib}<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/lib/* lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/armv6-angstrom-linux-gnueabi/usr/lib/* usr/lib/<br />
sudo rsync -av 192.168.0.24::oe/build/ok6410-tmp/sysroots/i686-linux/usr/armv6/lib/gcc/arm-angstrom-linux-gnueabi/4.3.3/* lib/gcc/<br />
<br />
<br />
<br />
Config fpc to use the libraries, edit ''~/.fpc.cfg'' to include:<br />
<br />
#IFDEF CPUARM<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/usr/lib<br />
-Fl/usr/local/angstrom/arm/arm-angstrom-linux-gnueabi/lib/gcc</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2939Kernel Building2010-10-21T14:20:44Z<p>Michaelfung: /* Select kernel version */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>, which is normally defined in the machine config file. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
FIXME.<br />
<br />
== Default configuration ==<br />
<br />
The default .config file used is normally placed somewhere under recipes/linux named '''defconfig'''.<br />
You may want to search for it, say for vmware:<br />
<br />
find recipes/linux -name "vmware*"<br />
<br />
And you find it in: <br />
recipes/linux/linux/vmware/defconfig<br />
<br />
<br />
== Apply custom patches ==<br />
FIXME<br />
<br />
== Customize configuration ==<br />
If you need to customize the kernel configuration, you may run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
<br />
'''Note:''' by default these command requires you to run in X Windows. If you want to work in text terminal only, here's a [[How_to_use_bitbake_without_X_Windows|how to]].<br />
<br />
== Compile ==<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
== Fine control ==<br />
If you need more control over the configuration and compile process, you can go to the shell by:<br />
bitbake -c devshell virtual/kernel<br />
The build environment will be well setup for you; you can run regular make commands like <tt>make bzImage</tt> ...etc<br />
<br />
== Preserving the custom configuration ==<br />
Changes are lost if you remove the tmpdir or do a "<tt>bitbake -c clean virtual/kernel</tt>", so you<br />
may consider replacing the defconfig with it.<br />
<br />
[[Category:User]]<br />
[[Category:FAQ]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2938Kernel Building2010-10-21T14:19:25Z<p>Michaelfung: /* Kernel image type */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>, which is normally defined in the machine config file. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Default configuration ==<br />
<br />
The default .config file used is normally placed somewhere under recipes/linux named '''defconfig'''.<br />
You may want to search for it, say for vmware:<br />
<br />
find recipes/linux -name "vmware*"<br />
<br />
And you find it in: <br />
recipes/linux/linux/vmware/defconfig<br />
<br />
<br />
== Apply custom patches ==<br />
FIXME<br />
<br />
== Customize configuration ==<br />
If you need to customize the kernel configuration, you may run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
<br />
'''Note:''' by default these command requires you to run in X Windows. If you want to work in text terminal only, here's a [[How_to_use_bitbake_without_X_Windows|how to]].<br />
<br />
== Compile ==<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
== Fine control ==<br />
If you need more control over the configuration and compile process, you can go to the shell by:<br />
bitbake -c devshell virtual/kernel<br />
The build environment will be well setup for you; you can run regular make commands like <tt>make bzImage</tt> ...etc<br />
<br />
== Preserving the custom configuration ==<br />
Changes are lost if you remove the tmpdir or do a "<tt>bitbake -c clean virtual/kernel</tt>", so you<br />
may consider replacing the defconfig with it.<br />
<br />
[[Category:User]]<br />
[[Category:FAQ]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2936Kernel Building2010-10-21T08:14:17Z<p>Michaelfung: /* Kernel patches */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Default configuration ==<br />
<br />
The default .config file used is normally placed somewhere under recipes/linux named '''defconfig'''.<br />
You may want to search for it, say for vmware:<br />
<br />
find recipes/linux -name "vmware*"<br />
<br />
And you find it in: <br />
recipes/linux/linux/vmware/defconfig<br />
<br />
<br />
== Apply custom patches ==<br />
FIXME<br />
<br />
== Customize configuration ==<br />
If you need to customize the kernel configuration, you may run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
<br />
'''Note:''' by default these command requires you to run in X Windows. If you want to work in text terminal only, here's a [[How_to_use_bitbake_without_X_Windows|how to]].<br />
<br />
== Compile ==<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
== Fine control ==<br />
If you need more control over the configuration and compile process, you can go to the shell by:<br />
bitbake -c devshell virtual/kernel<br />
The build environment will be well setup for you; you can run regular make commands like <tt>make bzImage</tt> ...etc<br />
<br />
== Preserving the custom configuration ==<br />
Changes are lost if you remove the tmpdir or do a "<tt>bitbake -c clean virtual/kernel</tt>", so you<br />
may consider replacing the defconfig with it.<br />
<br />
[[Category:User]]<br />
[[Category:FAQ]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2935Kernel Building2010-10-21T08:13:07Z<p>Michaelfung: /* Kernel configuration */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Kernel patches ==<br />
<br />
Where to place the patch files and how to configure OE to apply them?<br />
<br />
== Default configuration ==<br />
<br />
The default .config file used is normally placed somewhere under recipes/linux named '''defconfig'''.<br />
You may want to search for it, say for vmware:<br />
<br />
find recipes/linux -name "vmware*"<br />
<br />
And you find it in: <br />
recipes/linux/linux/vmware/defconfig<br />
<br />
<br />
== Apply custom patches ==<br />
FIXME<br />
<br />
== Customize configuration ==<br />
If you need to customize the kernel configuration, you may run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
<br />
'''Note:''' by default these command requires you to run in X Windows. If you want to work in text terminal only, here's a [[How_to_use_bitbake_without_X_Windows|how to]].<br />
<br />
== Compile ==<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
== Fine control ==<br />
If you need more control over the configuration and compile process, you can go to the shell by:<br />
bitbake -c devshell virtual/kernel<br />
The build environment will be well setup for you; you can run regular make commands like <tt>make bzImage</tt> ...etc<br />
<br />
== Preserving the custom configuration ==<br />
Changes are lost if you remove the tmpdir or do a "<tt>bitbake -c clean virtual/kernel</tt>", so you<br />
may consider replacing the defconfig with it.<br />
<br />
[[Category:User]]<br />
[[Category:FAQ]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2934Kernel Building2010-10-21T08:11:19Z<p>Michaelfung: /* Kernel configuration */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Kernel patches ==<br />
<br />
Where to place the patch files and how to configure OE to apply them?<br />
<br />
== Kernel configuration ==<br />
<br />
=== Default configuration ===<br />
<br />
The default .config file used is normally placed somewhere under recipes/linux named '''defconfig'''.<br />
You may want to search for it, say for vmware:<br />
<br />
find recipes/linux -name "vmware*"<br />
<br />
And you find it in: <br />
recipes/linux/linux/vmware/defconfig<br />
<br />
<br />
=== Apply custom patches ===<br />
FIXME<br />
<br />
=== Customize configuration ===<br />
If you need to customize the kernel configuration, you may run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
<br />
'''Note:''' by default these command requires you to run in X Windows. If you want to work in text terminal only, here's a [[How_to_use_bitbake_without_X_Windows|how to]].<br />
<br />
=== Compile ===<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
=== Fine control ===<br />
If you need more control over the configuration and compile process, you can go to the shell by:<br />
bitbake -c devshell virtual/kernel<br />
The build environment will be well setup for you; you can run regular make commands like <tt>make bzImage</tt> ...etc<br />
<br />
=== Preserving the custom configuration ===<br />
Changes are lost if you remove the tmpdir or do a "<tt>bitbake -c clean virtual/kernel</tt>", so you<br />
may consider replacing the defconfig with it.<br />
<br />
[[Category:User]]<br />
[[Category:FAQ]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2929Kernel Building2010-10-20T14:56:40Z<p>Michaelfung: /* Kernel configuration */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Kernel patches ==<br />
<br />
Where to place the patch files and how to configure OE to apply them?<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???/defconfig.<br />
<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2928Kernel Building2010-10-20T14:54:42Z<p>Michaelfung: /* Kernel image type */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Select kernel version ==<br />
<br />
To select which kernel version to build, edit config file ??? and set variable ??? to , for example, 2.6.35.<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???/defconfig.<br />
<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2927Kernel Building2010-10-20T14:43:51Z<p>Michaelfung: /* Custom config */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???/defconfig.<br />
<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2926Kernel Building2010-10-20T14:42:22Z<p>Michaelfung: /* Default Build */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Kernel image type ==<br />
<br />
What kind of kernel image to build is controlled by the variable <tt>KERNEL_IMAGETYPE</tt>. For example, build image for u-boot<br />
KERNEL_IMAGETYPE = "uImage"<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???/defconfig.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2925Kernel Building2010-10-20T14:37:57Z<p>Michaelfung: /* Kernel configuration */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???/defconfig.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2924Kernel Building2010-10-20T14:29:12Z<p>Michaelfung: /* Custom config */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel<br />
<br />
<br />
[[Category:User]]</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2923Kernel Building2010-10-20T14:28:06Z<p>Michaelfung: /* Custom config */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.<br />
<br />
After that, you can compile the kernel by:<br />
bitbake -f -c compile virtual/kernel</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2922Kernel Building2010-10-20T14:25:19Z<p>Michaelfung: /* Build */</p>
<hr />
<div>== Default Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2921Kernel Building2010-10-20T14:24:24Z<p>Michaelfung: /* Build */</p>
<hr />
<div>== Build ==<br />
<br />
For a default build, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
<br />
== Kernel configuration ==<br />
<br />
The default .config file used is placed in ???.<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2920Kernel Building2010-10-20T14:20:58Z<p>Michaelfung: /* Custom config */</p>
<hr />
<div>== Build ==<br />
<br />
For fresh install, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration, run the menuconfig task by:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default this command requires you to run in X Windows.</div>Michaelfunghttps://www.openembedded.org/index.php?title=Kernel_Building&diff=2919Kernel Building2010-10-20T14:18:10Z<p>Michaelfung: Created page with '== Build == For fresh install, just run: bitbake virtual/kernel After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/gl…'</p>
<hr />
<div>== Build ==<br />
<br />
For fresh install, just run:<br />
bitbake virtual/kernel<br />
<br />
After done, you can collect the built image from under the deploy folder, for example: <tt>build/tmp/deploy/glibc/images/vmware/bzImage-vmware.bin</tt>.<br />
<br />
<br />
== Custom config ==<br />
<br />
If you need to customize the kernel configuration with menuconfig, do:<br />
bitbake -c menuconfig virtual/kernel<br />
<br />
'''Note:''' by default that command requires you to run in X Windows.</div>Michaelfung