The attached application note details the steps for setting up a 64-bit Ubuntu 11.10 Oneiric virtual machine and then installing the source bundle for the i.MX53 L2.6.35-11-09-01 which was released for the the i.MX53 START_R, (Freescale PMIC) but also works on the START (Dialog PMIC).
NOTE: In the attached application note document below there is a tgz file containing patches. When copying to your Linux host make sure that CR/LF were not added by Windows when extracting and that the md5 checksums are correct for the patch files. To verify yourself, you can in the extraction directory run:
$ md5sum -c *.md5
lkc-1.4-lib.patch: OK
sparse-0.4-fixlabel.patch: OK
To regenerate md5sum if incorrect here is the command for lkc, do the same for sparse changing the name:
$ md5sum lkc-1.4-lib.patch > lkc-1.4-lib.patch.md5
Dear Curtis Wald,
I follow instruments which located in Create-Ubuntu11-10-ltib11-09-01.docx.
But I stop at chapter 9.3.1.
How to generate the file: ltib-fix-rpm-flag.patch?
Best Regards
Harris
Hi Paul,
Generally once a source bundle has been pushed to the web site this archive is not updated. As software modifications are identifed they are made available as patch sets. Note that not all customers require the patch sets and by changing the source bundle with each change would make it difficult to track a source bundle release.
Recomendation is to download a source bundle and check if any patches are available for that release, if found download and apply if applicable or if you want to be at the latest verified release.
Regards,
-Curtis
Hi Curtis,
I did find the 201112 patch set and I also notice it has pretty detailed instructions within the tgz file. Thank you for that pointer. Out of curiousity, is there a reason why that patch set is not included in the source bundle?
Hi Jorge,
I have not tried using the Linaro ubuntu RFS (root file system) instead of the minimum files sytem created from the ltib build.
Linaro provides a complete solution for the i.mx53 QSB, so you could try that (linaro.org), u-boot, kernel, and file system.
If you want to mix Freescale ltib images with Linaro RFS you can try.
Your question: "Does changing the File System part with the Ubuntu one, can I end up with Ubuntu with graphics interface?" I am guessing you are describing the Unity Desktop that is now the default window manger with recent 11.04 and newer Ubuntu releases? You can try replacing the minimum RFS with the Linaro Ubuntu RFS on the microSD card and booting. Just copy the Linaro RFS onto the partition you had for the minimum RFS, or re-create the partition and do a new copy. Boot and see what you get.
Regards,
-Curtis
Thank you for documenting how to make the build.
I came across this thread looking to update the Ubuntu image I run in my QSB, I have tried the Ubuntu image provided by Linaro on the January 2012 release, but it runs very slow.
From the following response I assume that following the steps described on the document I won't end up with an image that has a desktop environment, so my question is:
Does changing the File System part with the Ubuntu one, can I end up with Ubuntu with graphics interface ?
thanks much.
Curtis Wald said:
This example is configured to build the minimum file system and uses all default package selections from the ltib install. There are not any Multimedia CODECS installed, which are provided in separate downloads. (See http://www.freescale.com/imxquickstart, select the Downloads tab then expand Codecs and other Algorithms)
The SD Card provided in the QSB kit uses the Ubuntu Linux File system which is vastly different than the minimum file system used in this example. There is an Ubuntu RFS that is available same download area as the CODECS, but found in the Run-time Software section.
Hi Paul,
The *patch* is a linux command that is a tool for modifying source code. Using a linux terminal, run the command "man patch" to see the details - you can also google search and find many examples.
The llink here: i.MX53 Linux Source Code Patch has the 201112 patch set for 11.09.01. This link was found on freescale.com/imx53tools under the Quick Start Board Linux Column in the middle of the page.
So, this thread is almost clueing me in. But I am just to unfamiliar with "patch" to know what the exact intended operation is to "Apply the patches." Can someone please say a few words about going about "applying the patches?"
Additioanlly, I recently downloaded a bundle (L2.6.35_11.09.01_ER_source_bundle.tar.gz) that included another .tgz file that expanded to a directory called just "patches" (none of the files had "_201112" in their names) and the directory contained 3 subdirectories (imx-test, kernel and u-boot). Did I get the correct bundle?
OK, it works! Thanks for that. I have now selected plateform and the program is building. I suppose these little differences are due to Oneiric updates, is that so?
Anyway, thanks again,
Antony
Curtis Wald said:
Hi Antony,
Just create a link:
$ sudo ln -s /usr/include/i386-linux-gnu/sys /usr/include/sys
You will then need to delete the elftosb directory and run ltib which should result in a complete build.
-Curtis
Antony Burton said:Hi,
Thanks for this well written step through - I was just saying to myself -"All is going so well" when I started having problems:
1) Ltib complained it couldn't find zlib package. I couldn't find this packge (only zlib-devel) so I deleted the line zlib 0 in the string pre_install_deps (line 92) to avoid the verification. This seemed to work, then an error occured with elftosb package (host_config.log):
In file included from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.h:10:0,
from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.cpp:8:
/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/stdafx.h:30:36: fatal error: /usr/include/sys/types.h: No such file or directory
compilation terminated.
make[1]: *** [AESKey.o] Error 1
make[1]: Leaving directory `/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/bld/linux'
make: *** [all] Error 2
error: Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
RPM build errors:
Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
Build time for elftosb: 1 seconds
Failed building elftosbApparently the file types.h is located at /usr/include/i386-linux-gnu/sys/types.h
What is the best solution? How come I get this error and not you?
Thanks for your help,Antony
Hi Antony,
Just create a link:
$ sudo ln -s /usr/include/i386-linux-gnu/sys /usr/include/sys
You will then need to delete the elftosb directory and run ltib which should result in a complete build.
-Curtis
Antony Burton said:
Hi,
Thanks for this well written step through - I was just saying to myself -"All is going so well" when I started having problems:
1) Ltib complained it couldn't find zlib package. I couldn't find this packge (only zlib-devel) so I deleted the line zlib 0 in the string pre_install_deps (line 92) to avoid the verification. This seemed to work, then an error occured with elftosb package (host_config.log):
In file included from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.h:10:0,
from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.cpp:8:
/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/stdafx.h:30:36: fatal error: /usr/include/sys/types.h: No such file or directory
compilation terminated.
make[1]: *** [AESKey.o] Error 1
make[1]: Leaving directory `/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/bld/linux'
make: *** [all] Error 2
error: Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
RPM build errors:
Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
Build time for elftosb: 1 seconds
Failed building elftosbApparently the file types.h is located at /usr/include/i386-linux-gnu/sys/types.h
What is the best solution? How come I get this error and not you?
Thanks for your help,Antony
Hi,
Thanks for this well written step through - I was just saying to myself -"All is going so well" when I started having problems:
1) Ltib complained it couldn't find zlib package. I couldn't find this packge (only zlib-devel) so I deleted the line zlib 0 in the string pre_install_deps (line 92) to avoid the verification. This seemed to work, then an error occured with elftosb package (host_config.log):
In file included from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.h:10:0,
from /opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/AESKey.cpp:8:
/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/common/stdafx.h:30:36: fatal error: /usr/include/sys/types.h: No such file or directory
compilation terminated.
make[1]: *** [AESKey.o] Error 1
make[1]: Leaving directory `/opt/freescale/ltib/usr/src/rpm/BUILD/elftosb-11.09.01/bld/linux'
make: *** [all] Error 2
error: Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
RPM build errors:
Bad exit status from /home/antony/imx53/11.09.01/ltib/tmp/rpm-tmp.23263 (%build)
Build time for elftosb: 1 seconds
Failed building elftosb
Apparently the file types.h is located at /usr/include/i386-linux-gnu/sys/types.h
What is the best solution? How come I get this error and not you?
Thanks for your help,
Antony
This thread in the Freescale forums fixed my issue:
Ltib Link error with fontconfig
Ben Beckwith said:
Curtis,
I've gone through your how-to on setting up LTIB on Oneric (thanks for that BTW). I built and deployed the resulting linux image and rootfs on my QSB. Success!
However, when I try to add X as a package, I get a linker error when trying to build the fontconfig package (see pasted error below).
Pasting error:
-----------------
/usr/lib/x86_64-linux-gnu/libfreetype.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [libfontconfig.la] Error 1
make[3]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2'
make: *** [all] Error 2
error: Bad exit status from /home/mx53user/imx53/11.09.01/ltib/tmp/rpm-tmp.80679 (%build)
RPM build errors:
Bad exit status from /home/mx53user/imx53/11.09.01/ltib/tmp/rpm-tmp.80679 (%build)
Build time for fontconfig: 22 seconds
Failed building fontconfig
f_buildrpms() returned an error, exiting
traceback:
main:560
Started: Wed Jan 18 13:32:31 2012
Ended: Wed Jan 18 13:32:54 2012
Elapsed: 23 seconds
These packages failed to build:
fontconfig
Build Failed
Exiting on error or interrupt
----------
Curtis,
I've gone through your how-to on setting up LTIB on Oneric (thanks for that BTW). I built and deployed the resulting linux image and rootfs on my QSB. Success!
However, when I try to add X as a package, I get a linker error when trying to build the fontconfig package (see pasted error below).
Pasting error:
-----------------
/usr/lib/x86_64-linux-gnu/libfreetype.so: file not recognized: File format not recognized
collect2: ld returned 1 exit status
make[3]: *** [libfontconfig.la] Error 1
make[3]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2/src'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mx53user/imx53/11.09.01/ltib/rpm/BUILD/fontconfig-2.4.2'
make: *** [all] Error 2
error: Bad exit status from /home/mx53user/imx53/11.09.01/ltib/tmp/rpm-tmp.80679 (%build)
RPM build errors:
Bad exit status from /home/mx53user/imx53/11.09.01/ltib/tmp/rpm-tmp.80679 (%build)
Build time for fontconfig: 22 seconds
Failed building fontconfig
f_buildrpms() returned an error, exiting
traceback:
main:560
Started: Wed Jan 18 13:32:31 2012
Ended: Wed Jan 18 13:32:54 2012
Elapsed: 23 seconds
These packages failed to build:
fontconfig
Build Failed
Exiting on error or interrupt
----------
Hi Leon,
Selecting imx5x [ Use ./ltib --selectype to access the menu after running ltib once] is correct for all i.mx5x products. Even though i.mx51 is shown for the platform on the following menu, this is correct for i.mx53. Agreed this should be changed.
-Curtis
After I get to this point: "The imx5x Based Boards menu is now presented as shown.", there is a text field Platform that intializes to "imx51", even though I have selected iMX53 in the previous menu.
This is NO multi-choice, but a text field. And it is NOT the u-boot platform name (which is further below) which must be imx53_loco.
What should this first text field be set to? "imx53"?
┌───────────────────── Freescale iMX5x Based Boards ──────────────────────┐
│ Arrow keys navigate the menu. <Enter> selects submenus --->. │
│ Highlighted letters are hotkeys. Pressing <Y> selectes a feature, │
│ while <N> will exclude a feature. Press <Esc><Esc> to exit, <?> for │
│ Help. Legend: [*] feature is selected [ ] feature is excluded │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │(imx51) Platform │ │
│ │--- LTIB settings │ │
Curtis,
can you tell if that setup allows me to rebuild the WMV (Windows Media) decoder libraries en Gstreamer plug-ins? I have trouble locating them. They are in the Ubuntu image.
Regards,
Leon.
Hi,
At this time I have not heard of any plans for an Ubuntu 11.10 VMware image release for the i.MX5x family.
Regards,
-Curtis,
Freescale SW FAE
xizhou wang said:
That is great new. Is there a VM image of this planned to be released later for the VM Player? Thanks.
Curtis,
FYI, I have one regression to report which I have identified to be related the IPU set of patches, I have opened a seperate thread here:
Regards,
Leon.
Leon,
Generally, yes you should apply patches. The release notes found in the patch bundle describe what issues have been resolved. You can determine if the resolutions affect your implementation, thus decide if warranted.
If you want to be running the latest verified code - apply the patches.
-Curtis
Leon Woestenberg said:
Curtis,
shouldn't developers also apply this patch: Linux_20201112_20patch_bundle.tar.gz ?
MX53 201112 Linux BSP patch release is based on L2.6.35_11.09.01_ER. It includes the
following source packages:- u-boot-v2009.08-imx_11.09.01_201112.tar.gz: U-Boot patches
- linux-2.6.35.3-imx_11.09.01_201112.tar.gz: Kernel patches
- imx-lib-11.09.01_201112.tar.gz: imx libraries patches
- imx-test-11.09.01_201112.tar.gz: Unit test patches
- firmware-imx-11.09.01_201112.tar.gz: vpu firmware patches
- amd-gpu-bin-mx51-11.09.01_201112.tar.gz: amd-gpu binary package for FrameBuffer
solution.
-
amd-gpu-x11-bin-mx51-11.09.01_201112.tar.gz: amd-gpu binary package for X-WindowRegards,
Leon.
This example is configured to build the minimum file system and uses all default package selections from the ltib install. There are not any Multimedia CODECS installed, which are provided in separate downloads. (See http://www.freescale.com/imxquickstart, select the Downloads tab then expand Codecs and other Algorithms)
The SD Card provided in the QSB kit uses the Ubuntu Linux File system which is vastly different than the minimum file system used in this example. There is an Ubuntu RFS that is available same download area as the CODECS, but found in the Run-time Software section.
Leon Woestenberg said:
Curtis,
thanks for this effort on writing how to cross-build from a Ubuntu 11.10 host system using LTIB.
To what extend does the resulting rootfs differ or equal the Ubuntu target image that is pre-installed on the (micro)SD card that comes with the IMX53QSB?
For example, does it include the Windows Media 8/9/10 hardware accelerated codecs?
Curtis,
shouldn't developers also apply this patch: Linux_20201112_20patch_bundle.tar.gz ?
MX53 201112 Linux BSP patch release is based on L2.6.35_11.09.01_ER. It includes the
following source packages:
- u-boot-v2009.08-imx_11.09.01_201112.tar.gz: U-Boot patches
- linux-2.6.35.3-imx_11.09.01_201112.tar.gz: Kernel patches
- imx-lib-11.09.01_201112.tar.gz: imx libraries patches
- imx-test-11.09.01_201112.tar.gz: Unit test patches
- firmware-imx-11.09.01_201112.tar.gz: vpu firmware patches
- amd-gpu-bin-mx51-11.09.01_201112.tar.gz: amd-gpu binary package for FrameBuffer
solution.
-
amd-gpu-x11-bin-mx51-11.09.01_201112.tar.gz: amd-gpu binary package for X-Window
Regards,
Leon.
That is great new. Is there a VM image of this planned to be released later for the VM Player? Thanks.