Summary: | media-libs/allegro-4.2.0 fails on amd64 with undefined references | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Will Briggs <will.briggs> |
Component: | [OLD] Games | Assignee: | Gentoo Games <games> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | alastairmurray, drwook, groepaz, omschaub, openhs, th_veith |
Priority: | High | ||
Version: | unspecified | ||
Hardware: | AMD64 | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Attachments: | Allegro ebuild diff |
Description
Will Briggs
2005-12-04 01:49:30 UTC
Same here, also with AMD64. One previous warning during compilation: x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -Iinclude -Iinclude/allegro -I./include -I./include/allegro -O2 -march=k8 -mtune=k8 -pipe -fomit-frame-pointer -frename-registers -fno-ident -fno-pie -DALLEGRO_LIB_BUILD -mtune=k8 -O2 -funroll-loops -ffast-math -fomit-frame-pointer -Wall -Wno-unused -fPIC -DALLEGRO_SHARED -c ./src/linux/lkeybd.c -o obj/unix/shared/alleg/lkeybd.o In file included from ./src/linux/lkeybd.c:91: /usr/include/linux/keyboard.h:7:2: warning: #warning Gentoo Linux Headers Warning: GNU Libc Linux Headers Override Detected. /usr/include/linux/keyboard.h:8:2: warning: #warning Gentoo Linux Headers Warning: This is bad. Removing override and continuing. /usr/include/linux/keyboard.h:9:2: warning: #warning Gentoo Linux Headers Warning: If your compilation dies here, mention this when /usr/include/linux/keyboard.h:10:2: warning: #warning Gentoo Linux Headers Warning: filing a bug! Same here, amd64 too running ~amd64. 4.1.18 is fine for me, so 4.2.0 will be going in to my package.mask until I can think of something or unless someone wants me to test something? Anyone got any further with this? I haven't managed to get anywhere... *** Bug 132891 has been marked as a duplicate of this bug. *** Just a note that this package has just been marked as stable on amd64 and the issue still exists so this may affect a wider range of people now. Has anyone determined the cause for this? A further note that this error still occurs when using gcc 4.1.1 + glibc 2.4 (i.e. current stable on amd64). same problem here :/ Created attachment 98268 [details, diff]
Allegro ebuild diff
Ok, well I've been playing and managed to get somewhere perhaps...
It appears (*i.e. I'm not an allegro dev, so I could be wrong or misunderstanding things here!) that the allegro ./configure needs --disable-asm passed to it on x86_64. Now, obviously a lot of people haven't hit this issue, but it looks from some diving on the allegro fora that during ./configure it's meant to dynamically determine when it's needed if not specified. I still haven't worked out how or why our systems are not being picked up by this though... Still looking....
However here's a diff that shows the simple hacky change I made in my overlay, which allows 4.2 to build and merge - I realise it could be done more elegantly with something like a use_enable but quite honestly I'm more interested in trying to sort this out with upstream if I/we can figure it out :)
What CPU are you guys having this problem running, Athlon 64 2800+ by any chance? processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 31 model name : AMD Athlon(tm) 64 Processor 3500+ stepping : 0 cpu MHz : 2200.000 cache size : 512 KB fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow lahf_lm bogomips : 4423.03 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ts fid vid ttp processor : 0 vendor_id : AuthenticAMD cpu family : 15 model : 12 model name : AMD Athlon(tm) 64 Processor 3200+ stepping : 0 cpu MHz : 2211.077 cache size : 512 KB fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext lm 3dnowext 3dnow bogomips : 4424.59 TLB size : 1024 4K pages clflush size : 64 cache_alignment : 64 address sizes : 40 bits physical, 48 bits virtual power management: ts fid vid ttp After adding --disable-asm to the ebuild (according to comment #9), it compiled. Adding --disable-asm to ebuild also fixes it for me on allegro-4.2.0 and allegro-4.2.1. I have the same CPU as previous comment (AMD64 3200+). There is a thread on this problem on the allegro dev forums [1] but as far as i can tell there is no solution posted (besides adding --disable-asm). They say compiling on amd64 implies --disable-asm, but obviously something is going wrong there. [1]:http://www.allegro.cc/forums/thread/587320/615771#target 4.2.1 should work |