Hi there. I've got an LTIB i.MX28 build failure, that I am unsure of the best way to work around. I've attached my latest ltib build log (captured via: "./ltib 2>&1 | tee ./ltib.141229.14.log").
The build failure happens when trying to build the gst-fsl-plugins package. I've resolved many, many LTIB config issues up to this point, but I'm not sure of the best way forward here.
In a nutshell, it looks like the build is failing when trying to build the gstutils.c file, claiming the glib-object.h header file is missing (see line 983 of attached log file and error snippet below).
I've googled around, read through the various LTIB and package log files, and I'm stumped. The header file does exist, but it doesn't seem to exist in any of the include paths the compiler is using:
altia@mint-linux-vm-v17-1-xfce ~/ltib/ltib_2.6.35_1.1.0/ltib $ find . -iname 'glib-object.h'
./rpm/BUILD/glib-2.22.1/glib/glib-object.h
I'm just not sure what to modify here to make the compile command correct. Some LTIB .spec file somewhere? Something else?
Anyone have any ideas?
Cheers,
Mike
++++++++++++++++++++++++++++++++++++++++++++++++++++++
My build setup:
- Build box: Mint Linux 17.1 (basically Ubuntu 14.x) (this is a VirtualBox virtual machine guest)
- LTIB 2.6.35.1.1.0 (assuming dated Jan 30, 2013) (L2.6.35_1.1.0_130130_source.tar.gz)
- v3.0.6 of Linux Multimedia codecs (L2.6.35_1.1.0_130130_MM_CODECS_BUNDLE.tar.gz)
- Misc LTIB patches to resolve missing packages and Ubuntu 12+ config issues; mostly gathered from searching the Freescale forums
++++++++++++++++++++++++++++++++++++++++++++++++++++++
...
libtool: compile: gcc "-DPACKAGE_NAME=\"GStreamer i.MX Plug-ins\"" -DPACKAGE_TARNAME=\"gstreamer-i-mx-plug-ins\" -DPACKAGE_VERSION=\"3.0.6\" "-DPACKAGE_STRING=\"GStreamer i.MX Plug-ins 3.0.6\"" -DPACKAGE_BUGREPORT=\"http://www.freescale.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"gst-fsl-plugins\" -DVERSION=\"3.0.6\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DHAVE_AACD_DEC_INTERFACE_H=1 -DHAVE_MP3_DEC_INTERFACE_H=1 -DHAVE_OGGVORBIS_DEC_API_H=1 -DHAVE_NB_AMR_DEC_API_H=1 -DHAVE_WBAMR_DEC_INTERFACE_H=1 -DHAVE_MP3_ENC_INTERFACE_H=1 -DHAVE_AVCD_DEC_API_H=1 -DHAVE_MPEG4_ASP_API_H=1 -DHAVE_MPEG2_DEC_API_H=1 -DHAVE_FSL_PARSER_H=1 -DHAVE_FSL_UNIA_H=1 -DHAVE_LINUX_VIDEODEV2_H=1 -DHAVE_LINUX_MXCFB_H=1 -DHAVE_LINUX_MXCFB_H=1 -I. -pthread -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/gstreamer-0.10 -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/glib-2.0 -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/lib/glib-2.0/include -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/libxml2 -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/src/linux/include -I../inc/common -g -O2 -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/imx-mm/audio-codec -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/imx-mm/video-codec -I/home/altia/ltib/ltib_2.6.35_1.1.0/ltib/rootfs/usr/include/imx-mm/parser -DARM -D_GNUC_ -MT libgstfsl_0.10_la-gstsutils.lo -MD -MP -MF .deps/libgstfsl_0.10_la-gstsutils.Tpo -c gstsutils/gstsutils.c -fPIC -DPIC -o .libs/libgstfsl_0.10_la-gstsutils.o
In file included from gstbufmeta/gstbufmeta.c:41:
gstbufmeta/gstbufmeta.h:40:25: error: glib-object.h: No such file or directory
...
++++++++++++++++++++++++++++++++++++++++++++++++++++++
Original Attachment has been moved to: ltib.141229.14.log.zip
已解决! 转到解答。
Resolved my issue earlier this morning.
I was poking around different dirs and I noted that there were a bunch of what appeared to be build leftovers in the ltib/rpm/BUILD dir wrt GLIB and some other pkgs. I manually deleted these leftovers and did a a “distclean” to wipe everything out, and kick off a new build from a saved config.
Everything built great! Took about 1.5 hours.
Guess something must’ve gotten botched (probably my fault), during all the initial patching, etc to get it to run on Mint / Ubuntu 14+.
Resolved my issue earlier this morning.
I was poking around different dirs and I noted that there were a bunch of what appeared to be build leftovers in the ltib/rpm/BUILD dir wrt GLIB and some other pkgs. I manually deleted these leftovers and did a a “distclean” to wipe everything out, and kick off a new build from a saved config.
Everything built great! Took about 1.5 hours.
Guess something must’ve gotten botched (probably my fault), during all the initial patching, etc to get it to run on Mint / Ubuntu 14+.
I strongly advice you to ponder about moving to Yocto Project.
The MX28 support there is very solid and provides a much nicer and updated user space stack.
Take a look at Public images - fsl-community-bsp/dizzy/
There are imx28evk images for test.
Yes - GLIB 2.0 dev package is installed. See below for cmd line excerpts from my VM.
I think the LTIB build error has to do with the include paths passed to the compiler. I'm just not sure of what LTIB file(s) to modify to work around this.
Mike
+++++++++++++++++++++++++++++++++
Cmd line excerpts re: GLIB 2.0 dev pkg:
+++++++++++++++++++++++++++++++++
altia@mint-linux-vm-v17-1-xfce ~/ltib/ltib_2.6.35_1.1.0/ltib $ pkg-config --cflags gobject-2.0
-I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include
altia@mint-linux-vm-v17-1-xfce ~/ltib/ltib_2.6.35_1.1.0/ltib $ pkg-config --cflags gobject-2.0 | sed -e 's/-I//g' | xargs ls -alF
/usr/include/glib-2.0:
total 48
drwxr-xr-x 5 root root 4096 Dec 24 14:45 ./
drwxr-xr-x 43 root root 4096 Dec 29 11:24 ../
drwxr-xr-x 2 root root 12288 Dec 24 14:45 gio/
drwxr-xr-x 3 root root 4096 Dec 24 14:45 glib/
-rw-r--r-- 1 root root 3298 Sep 25 11:51 glib.h
-rw-r--r-- 1 root root 1433 Sep 25 11:51 glib-object.h
-rw-r--r-- 1 root root 4311 Sep 25 11:51 glib-unix.h
-rw-r--r-- 1 root root 3966 Sep 25 11:51 gmodule.h
drwxr-xr-x 2 root root 4096 Dec 24 14:45 gobject/
/usr/lib/i386-linux-gnu/glib-2.0/include:
total 16
drwxr-xr-x 2 root root 4096 Dec 24 14:45 ./
drwxr-xr-x 3 root root 4096 Dec 24 14:45 ../
-rw-r--r-- 1 root root 5810 Sep 25 11:51 glibconfig.h
In LTIB, you can change the build parameters in the .spec file. The spec file is in the ltib/dist/lfs-5.0/<package name>/package-name.spec
OR
you may simply try to use the command "ln -s " to make a symbolic link.
for example : ln -s /usr/lib/i386-linux-gnu/glib-2.0 /usr/lib/glib-2.0