Stuart Hughes,

Thank you.  Several times the cross-compilation would interrupt with errors and 
I could not understand why the *.la file was important to the compilation.

It was unforeseen that an innocuous statement would create cross-compilation 
build and install problems.

find $RPM_BUILD_ROOT%{pfx}%{_prefix}/lib/ -name "*.la" | xargs rm -f

After removing the above statement, warnings such "file moved" and the error 
"no such file or directory found" were commonplace.

http://lists.gnu.org/archive/html/ltib/2010-04/msg00127.html



From: Leonard Pimentel
Sent: Wednesday, January 14, 2015 11:08 AM
To: '[email protected]'
Subject: Cross-compilation errors preventing build

General cross-compiling question

Are there two solutions (at minimum) to solve the following warning [file 
moved] and error [no such file]?  I am running into build errors.  Help is 
appreciated.

Error log snippet:

libtool: link: warning: library 
`/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rootfs/usr/lib/libgstvideo-0.10.la'
 was moved.
/bin/sed: can't read /usr/lib/libgstinterfaces-0.10.la: No such file or 
directory
libtool: link: `/usr/lib/libgstinterfaces-0.10.la' is not a valid libtool 
archive
make[3]: *** [libgstaudiofx.la] Error 1
make[3]: Leaving directory 
`/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rpm/BUILD/gst-plugins-good-0.10.25/gst/audiofx'
make[2]: *** [audiofx] Error 2
make[3]: Leaving directory 
`/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rpm/BUILD/gst-plugins-good-0.10.25/gst/debugutils'
make[2]: Leaving directory 
`/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rpm/BUILD/gst-plugins-good-0.10.25/gst'
make[1]: *** [all-recursive] Error 1



Snippets from spec file

%define pfx          /opt/freescale/rootfs/%{_target_cpu}
%define LOGICPD_DIR  
/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3

%Build
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:%LOGICPD_FS/usr/lib/pkconfig

lt_cv_path_NM=nm \
./configure --prefix=%{_prefix} --host=$CFGHOST --build=%{_build} \
                --with-pkg-config-path=$PKG_CONFIG_PATH \
                CPPFLAGS=-I%LOGICPD_DIR/rootfs/usr/include/gstreamer-0.10/gst \
                LDFLAGS=-L%LOGICPD_DIR/rootfs/usr/lib \

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=${RPM_BUILD_ROOT}%{pfx}



The following comment from StackOverflow suggests setting the dependency_libs 
section.

Have you looked inside the libfreetype.la file? Libtool .la files are just text 
files describing libraries. By default, they are commented. Search for the 
libdir and dependency_libs settings and check if they point to the right places.

How can this be accomplished either in the configuration statement or via a 
libtool -finish command?

Contents of two .la files.  Note the libdir is referenced the file system 
directory path under the cross-compilied target.

# libgstinterfaces-0.10.la - a libtool library file
# Generated by ltmain.sh (GNU libtool) 2.2.6b Debian-2.2.6b-2
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libgstinterfaces-0.10.so.0'

# Names of this library.
library_names='libgstinterfaces-0.10.so.0.21.0 libgstinterfaces-0.10.so.0 
libgstinterfaces-0.10.so'

# The name of the static archive.
old_library='libgstinterfaces-0.10.a'

# Linker flags that can not go in dependency_libs.
inherited_linker_flags=' -pthread'

# Libraries that this one depends upon.
dependency_libs=' 
-L/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rootfs/usr/lib
 -lgstreamer-0.10 -lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lxml2 
-lglib-2.0 -lm'

# Names of additional weak libraries provided by this library
weak_library_names=''

# Version information for libgstinterfaces-0.10.
current=21
age=21
revision=0

# Is this an already installed library?
installed=yes

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/lib'




libgstaudio-0.10.la - a libtool library file
# Generated by ltmain.sh (GNU libtool) 2.2.6b Debian-2.2.6b-2
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libgstaudio-0.10.so.0'

# Names of this library.
library_names='libgstaudio-0.10.so.0.21.0 libgstaudio-0.10.so.0 
libgstaudio-0.10.so'

# The name of the static archive.
old_library='libgstaudio-0.10.a'

# Linker flags that can not go in dependency_libs.
inherited_linker_flags=' -pthread'

# Libraries that this one depends upon.
dependency_libs=' 
-L/home/leo/logic/Logic_BSPs/Linux_3.0/1026167_LogicPD_Linux_BSP_2.4-3/rootfs/usr/lib
 -lgstbase-0.10 /usr/lib/libgstinterfaces-0.10.la -lgstreamer-0.10 
-lgobject-2.0 -lgmodule-2.0 -lgthread-2.0 -lrt -lxml2 -lglib-2.0 -lm'

# Names of additional weak libraries provided by this library
weak_library_names=''

# Version information for libgstaudio-0.10.
current=21
age=21
revision=0

# Is this an already installed library?
installed=yes

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/usr/lib'



Leonard Pimentel
CEO & CTO
Lotus Research, LLC.
Cell: (917) 834-7533
[logo_linkedin_92x22]<http://www.linkedin.com/pub/leonard-pimentel/3/a0a/796>

_______________________________________________
LTIB home page: http://ltib.org

Ltib mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/ltib

Reply via email to