[opensuse-buildservice] 64b build of evas
Hi, I have strange problem with building evas. It only happen on 64b and only when using obs. If I try to build it manually, everything works correctly. error is: ake[4]: Leaving directory `/usr/src/packages/BUILD/evas/src/lib/include' make[4]: Entering directory `/usr/src/packages/BUILD/evas/src/lib' CC main.lo CCLD libevas.la /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386:x86-64 output collect2: ld returned 1 exit status make[4]: *** [libevas.la] Error 1 See https://build.opensuse.org/package/show?package=evas&project=home%3Athidney%3Ae17 x86_64 fail log. Thanks, Thidney -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
CC main.lo CCLD libevas.la /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386:x86-64 output collect2: ld returned 1 exit status make[4]: *** [libevas.la] Error 1
This issue persist for some time, but as I used 32b packages I did not pay attention to it. However recently, same error appear also for 32b builds. It also start to behave even more suspiciously - my local builds with osc build are ok: 4 packages and 0 specfiles checked; 1 errors, 407 warnings. deepblue finished "build evas.spec" at Wed Aug 31 20:37:00 UTC 2011. /var/tmp/build-root/usr/src/packages/SRPMS/evas-20110831_63017-1.src.rpm /var/tmp/build-root/usr/src/packages/RPMS/x86_64/evas- doc-20110831_63017-1.x86_64.rpm /var/tmp/build- root/usr/src/packages/RPMS/x86_64/evas-20110831_63017-1.x86_64.rpm /var/tmp/build-root/usr/src/packages/RPMS/x86_64/evas- devel-20110831_63017-1.x86_64.rpm pavel@deepblue:~/Projects/obs/home:thidney:e17/evas> Requires(rpmlib): rpmlib(PayloadFilesHavePrefix) <= 4.0-1 rpmlib(CompressedFileNames) <= 3.0.4-1 -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 31/08/11 17:40, Thidney wrote:
CC main.lo CCLD libevas.la /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386:x86-64 output
Looks like the compiler is passing -m32 while building in 64 bit mode.... -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 31/08/11 17:19, Thidney wrote:
If I try to build it manually, everything works correctly.
I guess you mean.. "seems to work correctly" ;-)
error is: ake[4]: Leaving directory `/usr/src/packages/BUILD/evas/src/lib/include' make[4]: Entering directory `/usr/src/packages/BUILD/evas/src/lib' CC main.lo CCLD libevas.la /usr/lib64/gcc/x86_64-suse-linux/4.5/../../../../x86_64-suse-linux/bin/ld: i386 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386:x86-64 output collect2: ld returned 1 exit status make[4]: *** [libevas.la] Error 1
See https://build.opensuse.org/package/show?package=evas&project=home%3Athidney%3Ae17
Ok, first make the compiler verbose, probably by using --disable-silent-rules in configure or make V=1 make VERBOSE=1 ... -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
https://build.opensuse.org/package/show?package=evas&project=home%3Athidney%3Ae17
Ok, first make the compiler verbose, probably by using --disable-silent-rules in configure or make V=1 make VERBOSE=1 ...
Did both. Now x86_64b is building and i386 failing with: libtool: link: rm -fr .libs/libevas.la .libs/libevas.lai .libs/libevas.so .libs/libevas.so.1 .libs/libevas.so.1.0.999 libtool: link: gcc -shared .libs/main.o -Wl,--whole-archive canvas/.libs/libevas_canvas.a file/.libs/libevas_file.a cache/.libs/libevas_cache.a cserve/.libs/libevas_cserve.a engines/common/.libs/libevas_engine_common.a engines/common_16/.libs/libevas_engine_common_16.a -Wl,--no-whole-archive - lrt -lfreetype -leet -lfontconfig -lpthread -leina -lm -pthread -pthread - Wl,-soname -Wl,libevas.so.1 -o .libs/libevas.so.1.0.999 /usr/lib/gcc/i586-suse-linux/4.5/../../../../i586-suse-linux/bin/ld: i386:x86-64 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386 output -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 01/09/11 18:35, Thidney wrote:
https://build.opensuse.org/package/show?package=evas&project=home%3Athidney%3Ae17
Ok, first make the compiler verbose, probably by using --disable-silent-rules in configure or make V=1 make VERBOSE=1 ...
Did both. Now x86_64b is building and i386 failing with:
libtool: link: rm -fr .libs/libevas.la .libs/libevas.lai .libs/libevas.so .libs/libevas.so.1 .libs/libevas.so.1.0.999 libtool: link: gcc -shared .libs/main.o -Wl,--whole-archive canvas/.libs/libevas_canvas.a file/.libs/libevas_file.a cache/.libs/libevas_cache.a cserve/.libs/libevas_cserve.a engines/common/.libs/libevas_engine_common.a engines/common_16/.libs/libevas_engine_common_16.a -Wl,--no-whole-archive - lrt -lfreetype -leet -lfontconfig -lpthread -leina -lm -pthread -pthread - Wl,-soname -Wl,libevas.so.1 -o .libs/libevas.so.1.0.999 /usr/lib/gcc/i586-suse-linux/4.5/../../../../i586-suse-linux/bin/ld: i386:x86-64 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386 output
Ok, I understand why you are puzzled, it isnt obvious to deduce from that obscure generally cryptic messages, which are designed to make programmer's life a hell =P The problem is in src/lib/canvas/evas_filter.c that is a supposedly completely commented #if 0 ... #endif top to bottom with comment #if 0 // filtering disabled however there is a typo somewhere in the file, which contains ARM targetted inline asm. I have sent a submit request with a fix to your home project. SR #80574 Oh, btw, next time send this kind of questions to the packaging mailing list since it is not a bug in the buildservice. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
libtool: link: rm -fr .libs/libevas.la .libs/libevas.lai .libs/libevas.so .libs/libevas.so.1 .libs/libevas.so.1.0.999 libtool: link: gcc -shared .libs/main.o -Wl,--whole-archive canvas/.libs/libevas_canvas.a file/.libs/libevas_file.a cache/.libs/libevas_cache.a cserve/.libs/libevas_cserve.a engines/common/.libs/libevas_engine_common.a engines/common_16/.libs/libevas_engine_common_16.a -Wl,--no-whole-archive - lrt -lfreetype -leet -lfontconfig -lpthread -leina -lm -pthread -pthread - Wl,-soname -Wl,libevas.so.1 -o .libs/libevas.so.1.0.999 /usr/lib/gcc/i586-suse-linux/4.5/../../../../i586-suse-linux/bin/ld: i386:x86-64 architecture of input file `canvas/.libs/libevas_canvas.a(evas_filter.o)' is incompatible with i386 output Ok, I understand why you are puzzled, it isnt obvious to deduce from that obscure generally cryptic messages, which are designed to make programmer's life a hell =P Nice, I would have been never find that out.
The problem is in src/lib/canvas/evas_filter.c that is a supposedly completely commented #if 0 ... #endif top to bottom with comment
#if 0 // filtering disabled however there is a typo somewhere in the file, which contains ARM targetted inline asm.
I have sent a submit request with a fix to your home project. SR #80574
Work perfectly.
Oh, btw, next time send this kind of questions to the packaging mailing list since it is not a bug in the buildservice.
Well, I really thought that obs process have some issue, as my cmdline compilation worked on 64 and 32b system. Only obs seemed to be broken. I will check packaging ml next time. Thanks Christian. A lot. Thidney. -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
On 04/09/11 18:14, Thidney wrote:
Well, I really thought that obs process have some issue, as my cmdline compilation worked on 64 and 32b system. Only obs seemed to be broken.
Right ;) It probably did,the compiler may have done DCE (dead code elimination) or something similar... -- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (2)
-
Cristian Rodríguez
-
Thidney