Hi
I am currently working on i.MX53 QSB following the Freescale manual "i.MX53_START_Linux_BSP_UserGuide.pdf" and it did mentioned that "Please note that only the profiles of Min profile, FSL gnome release packages and mfg firmware profile pass build tests.". Below are some tests carried out to verify the above statement, the goal is to create a minimum Linux Desktop rootfs (with X) similiar to the MicroSD - Ubuntu 10.04 (Lucid) image which is came together inside the iMX53 QSB Box.
Test Procedure
=========================
Using the VM_Ubuntu.zip Vmware image provided by Freescale running in Vmware Player.
[LTIB Home Directory ]> ./ltib -c OR ./ltib --selectype (if you run it next time)
Screen 1:
- Platform choice: (Freescale iMX reference boards)
Screen 2:
- Choose the platform type: mx5x
- packages profile: use packages in [FSL gnome release package]
Screen 3 (LTIB main menu):
- Choose your board for u-boot: mx53_loco
* [Exit] and Start building .....
Below is the Test Result for each build profile type.
*** Pls Note that each test could take from 20 minutes to 4-7 hours.***
#############################################################################
Preconfig Min Profile - OK
#############################################################################
Test1: Succeed
==================================
- Follow the above Test Procedure
- Build success !
- Flashed the newly built u-boot,kernel and rootfs inside a MicroSD, follow Freescale guide and tweaking the u-boot prompt to boot from MMC an it tested OK inside iMX53 QSB with user root (without any password required).
- However, this rootfs is without X like Ubuntu Desktop , so I need to proceed to build the FSL gnome release package.
#############################################################################
FSL gnome release package - OK
#############################################################################
Test1: Fail !
==================================
- Follow the above Test Procedure
- Build Fail !
- LTIB will start configuring and building, after long hours during building gnome-vfs ....
- Main Error =>
"cannot find -lgssapi_krb5"
- Suspect => Missing Kerberos 5 authentication
Test2: Fail !
==================================
- Goal => Trying to solve "cannot find -lgssapi_krb5"
- Follow up from Test1:
- [LTIB]> ./ltib -m config
- Screen 3 -> Package list, add:
[ * ] Kerberos 5 authentication
- [LTIB]> ./ltib
- LTIB will start fetching krb5-1.3.4, during configuring ....
- Build Fail !
- Main Error =>
checking for res_search... no
checking for res_search in -lresolv... no
configure: error: Cannot find resolver support routine res_search in -lresolv.
Test3: Fail !
==================================
- Goal => Trying to bypass "Cannot find resolver support routine res_search in -lresolv"
- Follow up from Test2:
- Make change to [LTIB]/dist/lfs-5.1/krb5/krb5.spec
config_opts='ac_cv_func_regcomp=yes ac_cv_file__etc_environment=yes ac_cv_file__etc_TIMEZONE=yes ac_cv_func_res_search=yes'
- [LTIB]> ./ltib
- LTIB will start configuring and building ...
- Build Fail !
- Main Error =>
hst_realm.c: In function 'krb5int_translate_gai_error':
hst_realm.c:442: error: 'EAI_NODATA' undeclared (first use in this function)
hst_realm.c:442: error: (Each undeclared identifier is reported only once
hst_realm.c:442: error: for each function it appears in.)
make[3]: *** [hst_realm.o] Error 1
make[3]: *** Waiting for unfinished jobs....
In file included from ../../../include/k5-int.h:143,
from krbfileio.c:42:
Test4: Fail !
==================================
- Goal => Trying to solve Test3 build errors
- Patching ....
Patch Manually => [ltib]/rpm/BUILD/krb5-1.3.4/src/lib/krb5/os/hst_realm.c
with => http://repository.timesys.com/buildsources/k/krb5/krb5-1.4.4/krb5-1.4.4-eai_nodata.patch
Patch Manually => [ltib]/rpm/BUILD/krb5-1.3.4/src/lib/krb5/os/locate_kdc.c
with => http://repository.timesys.com/buildsources/k/krb5/krb5-1.4.4/krb5-1.4.4-eai_nodata.patch
- [LTIB]> ./ltib
- LTIB will start configuring and building ...
- Build Fail !
- Main Error =>
client.c:54: warning: 'target' may be used uninitialized in this function
gcc -L../../../lib -Wl,-rpath -Wl,/usr/lib -g -O2 -Wall -Wmissing-prototypes -Wcast-qual -Wcast-align -Wconversion -Wshadow -Wno-comment -pedantic -o client client.o rpc_test_clnt.o \
-lgssrpc -lgssapi_krb5 -lkrb5 -lk5crypto -lcom_err
../../../lib/libkrb5.so: undefined reference to `__res_search'
../../../lib/libkrb5.so: undefined reference to `__dn_expand'
collect2: ld returned 1 exit status
make[3]: *** [server] Error 1
make[3]: *** Waiting for unfinished jobs....
../../../lib/libkrb5.so: undefined reference to `__res_search'
../../../lib/libkrb5.so: undefined reference to `__dn_expand'
collect2: ld returned 1 exit status
make[3]: *** [client] Error 1
Test5: Succeed
==================================
Perhaps need to find a suitable libresolv src and manually build and add it to the LTIB rpm/BUILD or use alternative resolver during the krb5 configure stage.
To solve the resolver error
=======================
./configure --prefix=%{_prefix} --host=$CFGHOST --build=%{_build} \
--enable-shared --without-tcl --with-netlib=/home/danny/test/training_mx53/linux/ltib/rootfs/lib/libresolv-2.11.1.so
Patch if you got these error
=======================
In file included from ./ftpcmd.y:71:
ftpd_var.h:92: error: conflicting types for 'getline'
/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/../lib/gcc/arm-fsl-linux-gnueabi/4.4.4/../../../../arm-fsl-linux-gnueabi/include/stdio.h:651: note: previous declaration of 'getline' was here
Patch Manually => [LTIB]/rpm/BUILD/krb5-1.3.4/src/appl/gssftp/ftpd/ftpcmd.y
with => http://mailman.mit.edu/pipermail/kerberos/2006-June/009953.html
Patch Manually => [LTIB]/rpm/BUILD/krb5-1.3.4/src/appl/gssftp/ftpd/ftpd_var.h
with => http://mailman.mit.edu/pipermail/kerberos/2006-June/009953.html
Patch Manually => [LTIB]/rpm/BUILD/krb5-1.3.4/src/appl/gssftp/ftpd/ftpd.c
with => http://mailman.mit.edu/pipermail/kerberos/2006-June/009953.html
#############################################################################
Test Summary
#############################################################################
Currently stopped at Test4, not sure how to proceed, seem like it is side effect of temporary bypassing the Resolver error earlier on using config_opts inside krb5.spec.
Test succeeded at Test 5
Anyone from Freescale Technical involved in testing and verifying the LTIB building of FSL gnome release package as mentioned inside " i.MX53_START_Linux_BSP_UserGuide.pdf" which clearly mention that "Please note that only the profiles of Min profile, FSL gnome release packages and mfg firmware profile pass build tests."or anyone has somehow successfully build the FSL gnome release package before, appreciate if you can share your secret. Currently, I can't find anything inside Freescale official guidelines which could make this work . Pls help !
Many Thank in advance.
while building LTIB with FSL gnome release packages in step5 its giving error in this step ./configure --prefix=%{_prefix} --host=$CFGHOST --build=%{_build} \
--enable-shared --without-tcl --with-netlib=/home/danny/test/training_mx53/linux/ltib/rootfs/lib/libresolv-2.11.1.so
/*checking for short... yes
checking size of short... configure: error: cannot compute sizeof (short), 77
configure: error: /bin/bash './configure' failed for util/profile*/
what is the reason for this
To resolve the problem "cannot find -lgssapi_krb5" when building gnome-vfs, just simply to remove or rename the /usr/bin/krb5-config file.
On 09/03/2012 2:53, IMXCommunity.org wrote:
>
> I'm new to embedded system and iMX53 QSB.
>
> I'm following your steps to build 'FSL gnome release package' with
> TWM and change 'startx' file and I success to enter a graphic system.
>
> But the system doesn't same as the ubuntu system in the original
> microSD card.
>
> It just has several directories, like 'Active Tasks', 'Office',
> Internet', ..., and 'Desktop Preference', on the Desktop.
>
> What packages should I choose in the LTIB option?
>
>
Hello Dean,
- The i.MX53 QSB BSP that serve to create the original SD-Card
come from Canonical.
See the following discussion:
http://imxcommunity.org/forum/topics/imx53-quick-start-board-the
- I don't think the BSP's that you can download from Freescale
have all the package found in the original SD-Card.
- I have not investigated on "How to re-create the original
SD-Card", but the key to this is probably in the discussion
link I mentioned above.
Regards,
Claude
Hi
I'm new to embedded system and iMX53 QSB.
I'm following your steps to build 'FSL gnome release package' with TWM and change 'startx' file and I success to enter a graphic system.
But the system doesn't same as the ubuntu system in the original microSD card.
It just has several directories, like 'Active Tasks', 'Office', Internet', ..., and 'Desktop Preference', on the Desktop.
What packages should I choose in the LTIB option?
Thanks.
Hello Danny,
I have tried building the package gnome-vfs as you said with all test cases.
During test 5, after applying the patches to ftp files, I ended up with the below error: "cannot find -lcom_err"
------------
/opt/freescale/usr/local/gcc-4.4.4-glibc-2.11.1-multilib-1.0/arm-fsl-linux-gnueabi/bin/../lib/gcc/arm-fsl-linux-gnueabi/4.4.4/../../../../arm-fsl-linux-gnueabi/bin/ld: cannot find -lcom_err
collect2: ld returned 1 exit status
make[2]: *** [libftp.la] Error 1
make[2]: *** Waiting for unfinished jobs....
rm -fr .libs/libhttp.lax
mkdir .libs/libhttp.lax
rm -fr .libs/libhttp.lax/libneon.a
mkdir .libs/libhttp.lax/libneon.a
(cd .libs/libhttp.lax/libneon.a && ar x /home/cmc/ltib/ltib/rpm/BUILD/gnome-vfs-2.24.1/modules/../imported/neon/.libs/libneon.a)
ar cru .libs/libhttp.a http-neon-method.o http-proxy.o .libs/libhttp.lax/libneon.a/ne_dates.o .libs/libhttp.lax/libneon.a/ne_request.o .libs/libhttp.lax/libneon.a/ne_props.o .libs/libhttp.lax/libneon.a/ne_locks.o .libs/libhttp.lax/libneon.a/ne_utils.o .libs/libhttp.lax/libneon.a/ne_redirect.o .libs/libhttp.lax/libneon.a/ne_md5.o .libs/libhttp.lax/libneon.a/ne_acl.o .libs/libhttp.lax/libneon.a/ne_xmlreq.o .libs/libhttp.lax/libneon.a/ne_session.o .libs/libhttp.lax/libneon.a/ne_gnomevfs.o .libs/libhttp.lax/libneon.a/ne_compress.o .libs/libhttp.lax/libneon.a/ne_auth.o .libs/libhttp.lax/libneon.a/ne_alloc.o .libs/libhttp.lax/libneon.a/ne_basic.o .libs/libhttp.lax/libneon.a/ne_207.o .libs/libhttp.lax/libneon.a/ne_string.o .libs/libhttp.lax/libneon.a/ne_uri.o .libs/libhttp.lax/libneon.a/ne_xml.o
arm-linux-ranlib .libs/libhttp.a
rm -fr .libs/libhttp.lax
creating libhttp.la
(cd .libs && rm -f libhttp.la && ln -s ../libhttp.la libhttp.la)
make[2]: Leaving directory `/home/cmc/ltib/ltib/rpm/BUILD/gnome-vfs-2.24.1/modules'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/cmc/ltib/ltib/rpm/BUILD/gnome-vfs-2.24.1'
make: *** [all] Error 2
error: Bad exit status from /home/cmc/ltib/ltib/tmp/rpm-tmp.58985 (%build)
RPM build errors:
Bad exit status from /home/cmc/ltib/ltib/tmp/rpm-tmp.58985 (%build)
Build time for gnome-vfs: 37 seconds
----------
Please suggest me on a way forward ?
thanks in advance.
-Nagesh A
On 09/11/2011 5:28, IMXCommunity.org wrote:
>
> I fixed my problem by replacing keyboard0 by event2 in startx script.
>
Hello Philippe,
Glad to know that you fixed your problem.
i.MX53 QSB is a great target!
Claude
Hello,
I fixed my problem by replacing keyboard0 by event2 in startx script.
Best Regards,
Philippe.
Actually TWM look pretty clean and cool. It show the originality of a "Windows" gui and it does look better than MS Windows 3.1 though. I feel that it is pretty light weight and good enough for application like Alarm Control Panel, Industrial meter, Oscilloscope, Car IVI and so on. I think we can tweak it somemore.
Hi Claude,
Your new startx script for matchbox did work OK !!!
After export DISPLAY=:0, the matchbox Windows Manager WORK OK ! It show a blue color desktop with a row of folder icon (Active Tasks, office, Internet, .... Desktop Preference) on top, a clock (4:00am) and a "start menu" at the bottom. I guess it work right ?
The mouse and keyboard work OK , but the touchscreen (I am using a 22" touch screen LCD monitor) is a bit offset when being touch or touch-drag.
There is much thing I need to learn to use this matchbox and another desktop/windows manager. Hopefully one day, can manage to configure the Unity Desktop for it. Really thank for your time and you really save my day, keep in touch.
The fun with iMX53 QSB has just begun !
Hi Claude,
Maybe inside my rootfs, I have added all X11 , modular packages during the build and somehow there is twm inside it.
root@freescale ~$ which twm
/usr/bin/twm
For the old startx script given, by trial and error, even there is no DISPLAY set, when I change "twm -display 0 &" ==> "twm -display :0 &", somehow it WORK ! , I can see "X" and mouse left click will bring up the TWM green color drop down menu where I can see the "Iconify,Resize....Xterm, Kill...." . Wow ! first time looking at TWM, back to 80" but it did work.
I will try to use the new startx script given to see if the Matchbox can work out or not .
Thanks a lot Claude, you really save my day !
Hi Claude,
Just for some reference, this attached file showing all logs started from iMX53 QSB power up, login, environment variables and list of all the running processes and the startx script used.
Beside, from the /dev/input , can't really find the /dev/input/keyboard0 as specified in the new startx script.
root@freescale /$ ls /dev/input
by-id event0 event2 event4 event6 mice mouse1 uinput
by-path event1 event3 event5 event7 mouse0 mouse2
Hi Claude,
Thank a lot for your time. I have just replaced the /usr/bin/startx with the attached script. Below is the test output:
VFS: Mounted root (ext4 filesystem) on device 179:1.
Freeing init memory: 172K
EXT4-fs (mmcblk0p1): re-mounted. Opts: (null)
mmcblk0: retrying using single block read
arm-none-linux-gnueabi-gcc (4.4.4_09.06.2010) 4.4.4
root filesystem built on Fri, 08 Jul 2011 03:35:33 +0800
Freescale Semiconductor, Inc.
freescale login: root
BusyBox v1.15.0 () built-in shell (ash)
Enter 'help' for a list of built-in commands.
root@freescale ~$
root@freescale ~$ uname -a
Linux freescale 2.6.35.3-744-g27fdf7b #1 PREEMPT Tue Jul 5 13:26:21 SGT 2011 armv7l GNU/Linux
root@freescale ~$export DISPLAY=:0
root@freescale ~$ startx
_XSERVTransSocketUNIXCreateListener: ...SocketCreateListener() failed
_XSERVTransMakeAllCOTSServerListeners: server already running
Fatal server error:
Cannot establish any listening sockets - Make sure an X server isn't already running
twm: unable to open display "0"
root@freescale ~$ps -ef
.....
2345 root 40100 S Xfbdev -nolisten tcp -keybd keyboard,,device=/dev/inp
2349 root 2148 R ps -ef
root@freescale ~$ kill 2345
root@freescale ~$ startx
(EE) XKB: Couldn't open rules file /usr/share/X11/xkb/rules/base
(EE) XKB: No components provided for device Virtual core keyboard
(EE) XKB: Couldn't open rules file /usr/share/X11/xkb/rules/base
(EE) XKB: No components provided for device (unnamed keyboard)
unrecognised device identifier!
(EE) config/hal: NewInputDeviceRequest failed (2)
unrecognised device identifier!
(EE) config/hal: NewInputDeviceRequest failed (2)
unrecognised device identifier!
(EE) config/hal: NewInputDeviceRequest failed (2)
unrecognised device identifier!
(EE) config/hal: NewInputDeviceRequest failed (2)
twm: unable to open display "0"
When I try to move the mouse, the below output is shown whereas the Keyboard keypress show no response
===============================================================================
root@freescale ~$ Switching to mouse protocol "imps/2"
Switching to mouse protocol "exps/2"
Switching to mouse protocol "bus"
Switching to mouse protocol "ps/2"
The LCD Monitor screen is just blank, when I kill the Xfbdev process, the screen will flickering once and just showing "No Signal" then blank.
This process => "Xfbdev -nolisten tcp -keybd keyboard,,device=/dev/inp" will always appear everytime I run "startx" , wondering why it ends with "device=/dev/inp" seem like could be some command quote issue or something else..
what is the startx file for imx53quicksortboard previously keyboard did not worked so when i add startx file to the /usr/bin then keyboard working but am not gettong LCD monitor display the startx file what i am using is that is given by you only what is the problem please let me know and LCD is MCIMX28LCD Seiko 4.3" WVGA Rev B
After configuration tweaking and some more patching and 12 hours building.... finally build succeeded for FSL gnome release package, flashed into the MicroSD but when boot up and login as root, fail to bring up the X & Matchbox as shown below:
[iMX53 QSB via USB Serial Cable]
===========================================================
root@freescale ~$ uname -a
Linux freescale 2.6.35.3-744-g27fdf7b #1 PREEMPT Tue Jul 5 13:26:21 SGT 2011 armv7l GNU/Linux
root@freescale ~$ startx
_XSERVTransSocketOpenCOTSServer: Unable to open socket for inet6
_XSERVTransOpen: transport open failed for inet6/freescale:0
_XSERVTransMakeAllCOTSServerListeners: failed to open listener for inet6
(EE) XKB: Couldn't open rules file /usr/share/X11/xkb/rules/base
(EE) XKB: No components provided for device Virtual core keyboard
Backtrace (0 deep):
Fatal server error:
Segmentation fault caught
matchbox-desktop: unable to open display !
matchbox-panel: failed to open displaymatchbox: can't open display! check your DISPLAY variable.
ts_open: No such file or directory
*This iMX53 QSB is tested OK and working fine using the Ubuntu 10.04 (Lucid) MicroSD previously. So its VGA Port, Cable and the LCD Monitor is OK.
* It show same error message even after exporting DISPLAY=:0
Below is the startx script used ( /usr/bin/startx)
===========================================================
#!/bin/sh
IS_BABBAGE=NO
grep Babbage /proc/cpuinfo > /dev/null 2>&1
if [ $? = 0 ]; then
IS_BABBAGE=YES
Xfbdev -keybd keyboard,,device=/dev/input/keyboard0 -mouse mouse,2,device=/dev/input/mice &
else
Xfbdev -mouse tslib,2,device=/dev/input/ts0 &
fi
sleep 8
matchbox-window-manager -d :0 -use_lowlight no -use_titlebar yes -use_cursor yes&
matchbox-desktop&
matchbox-panel --bgtrans yes &
sleep 5
# Calibrate when using the rootfs the first time
if [ $IS_BABBAGE = NO ]; then
ls /usr/etc | grep pointercal > /dev/null 2>&1
if [ $? = 1 ]; then
ts_calibrate
fi
fi
===========================================================
Can anyone help ? Thanks
Hi Claude,
From another Freescale iMX53 Download links:-
http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=i.MX...
L2.6.35_11.01.00_ER_source_bundle.tar.gz => iMX53 QSB
L2.6.35_11.03_ER_source_bundle.tar.gz => iMX53 Sabre Platform
L2.6.35_11.05.01_ER_source_bundle.tar.gz => iMX53 Sabre Platform
Wondering if we can also use 11.03 and 11.05 for iMX53 QSB ?