When making with -m32 in x86_64 kernel, the following error messages may be outputted: /usr/bin/ld: i386 architecture of input file `/root/ltp-dev/testcases/commands/ade/ldd/lddfile1.obj' is incompatible with i386:x86-64 output collect2: ld returned 1 exit status
The following patch can fix this. Signed-off-by: Peng Haitao <[email protected]> --- testcases/commands/ade/ldd/ldd01 | 33 +++++++++++++++++---------------- 1 files changed, 17 insertions(+), 16 deletions(-) diff --git a/testcases/commands/ade/ldd/ldd01 b/testcases/commands/ade/ldd/ldd01 index 3fa446e..fc26ecd 100755 --- a/testcases/commands/ade/ldd/ldd01 +++ b/testcases/commands/ade/ldd/ldd01 @@ -46,23 +46,24 @@ do_setup() { mkdir $TCtmp - # Check for ppc64 architecture - file lddfile1.obj | grep PowerPC | grep 64-bit >/dev/null 2>&1 - if [ $? -eq 0 ]; then - $CC -m64 -shared -o $TCtmp/lddfile1.obj.so $TCdat/lddfile1.obj - $CC -m64 -shared -o $TCtmp/lddfile2.obj.so $TCdat/lddfile2.obj - $CC -m64 -shared -o $TCtmp/lddfile3.obj.so $TCdat/lddfile3.obj - $CC -m64 -shared -o $TCtmp/lddfile4.obj.so $TCdat/lddfile4.obj - $CC -m64 -shared -o $TCtmp/lddfile5.obj.so $TCdat/lddfile5.obj - $CC -m64 -O -o $TCtmp/a.out $TCtmp/lddfile*.obj.so $TCdat/main.obj - else - $CC -shared -o $TCtmp/lddfile1.obj.so $TCdat/lddfile1.obj - $CC -shared -o $TCtmp/lddfile2.obj.so $TCdat/lddfile2.obj - $CC -shared -o $TCtmp/lddfile3.obj.so $TCdat/lddfile3.obj - $CC -shared -o $TCtmp/lddfile4.obj.so $TCdat/lddfile4.obj - $CC -shared -o $TCtmp/lddfile5.obj.so $TCdat/lddfile5.obj - $CC -O -o $TCtmp/a.out $TCtmp/lddfile*.obj.so $TCdat/main.obj + # Check for ppc64 architecture or x86_64 architecture + if uname -a | grep -iq powerpc; then + file lddfile1.obj | grep 64-bit >/dev/null 2>&1 + if [ $? -eq 0 ]; then + CFLAGS="-m64" + fi + elif uname -a | grep -iq x86_64; then + file lddfile1.obj | grep 32-bit >/dev/null 2>&1 + if [ $? -eq 0 ]; then + CFLAGS="-m32" + fi fi + $CC $CFLAGS -shared -o $TCtmp/lddfile1.obj.so $TCdat/lddfile1.obj + $CC $CFLAGS -shared -o $TCtmp/lddfile2.obj.so $TCdat/lddfile2.obj + $CC $CFLAGS -shared -o $TCtmp/lddfile3.obj.so $TCdat/lddfile3.obj + $CC $CFLAGS -shared -o $TCtmp/lddfile4.obj.so $TCdat/lddfile4.obj + $CC $CFLAGS -shared -o $TCtmp/lddfile5.obj.so $TCdat/lddfile5.obj + $CC $CFLAGS -O -o $TCtmp/a.out $TCtmp/lddfile*.obj.so $TCdat/main.obj } do_test() -- 1.7.1 -- Best Regards, Peng Haitao ------------------------------------------------------------------------------ All the data continuously generated in your IT infrastructure contains a definitive record of customers, application performance, security threats, fraudulent activity and more. Splunk takes this data and makes sense of it. Business sense. IT sense. Common sense. http://p.sf.net/sfu/splunk-d2dcopy1 _______________________________________________ Ltp-list mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/ltp-list
