| View previous topic :: View next topic |
| Author |
Message |
jmbsvicetto Moderator


Joined: 27 Apr 2005 Posts: 4725 Location: Angra do Heroísmo (PT)
|
Posted: Sun Nov 16, 2008 5:48 pm Post subject: Call for --as-needed testing |
|
|
For quite sometime, there has been an on-going discussion about --as-needed in the Gentoo community, with several threads in the gentoo dev ml, that finally lead to a discussion by the Gentoo Council and to the as-needed by default bug. You can read more about --as-needed and how to fix packages that fail to build with it in the --as-needed introduction and fixing guide written by flameeyes.
Diego has been building the whole tree with --as-needed and already found out a few issues and has a plan on how to deal with those issues. He's now asking for members of the community to help rapidly increase the scope of the test effort. If you want to help, follow the instructions in his blog entry and open up a new bug in Bugzilla blocking the --as-needed tracker bug. Be warned, that you should only run these tests if you understand what you're doing and if anything breaks it's up to you to pick up the pieces. Use this thread for discussion about the testing.
We strongly suggest you use a testing system or a chroot to do this testing and be warned that python/ruby/perl/whatever-non-c-bindings might fail at runtime since they are not tested at build-time. As Diego isn't testing any overlays, it would be very useful if you could test the overlays you use. _________________ Jorge.
Your twisted, but hopefully friendly daemon.
AMD64 / x86 / Sparc Gentoo
Help answer || emwrap.sh
|
|
| Back to top |
|
 |
widremann Veteran

Joined: 14 Mar 2005 Posts: 1314
|
Posted: Sat Dec 27, 2008 4:14 pm Post subject: |
|
|
| I've been running my laptop system with --as-needed for a while now and I haven't had anything break, at least not in any way that's obvious. |
|
| Back to top |
|
 |
ppurka Advocate

Joined: 26 Dec 2004 Posts: 3049
|
Posted: Sat Dec 27, 2008 4:31 pm Post subject: |
|
|
I am using --as-needed too for about 6 months. All packages compile and run properly. (Except alpine which I have in my local overlay).
My package list includes parts of kde, rox, enlightenment (from overlay), firefox, stable xorg, glibc-2.8, gcc-4.3.1 _________________ emerge --quiet redefined | E17 vids: I, II |
|
| Back to top |
|
 |
Letharion Veteran

Joined: 13 Jun 2005 Posts: 1216 Location: Sweden
|
Posted: Tue Jan 20, 2009 4:04 pm Post subject: |
|
|
I used the --as-needed gcc-profile and did
| Code: | | emwrap -Sb && emwrap -W |
(so basically emerge -e system && emerge -e world) and every single package compiled flawlessly.
We'll see what happens at runtime, and if I start getting wierd crashed I'll report back, but so far everything is working well.
[Edit]dev-java/swt-3.4-r2 needs to be build without --as-needed for Vuze to start. Bug has been filed[/Edit]
[Edit]20 days have passed. No crashes yet, afaik.[/Edit]
Here is my world/keywords/use file. I assume that someone who knows gentoo better than me can derive what packages I have from this.
I'm on x86.
World
| Code: | app-admin/eselect
app-admin/logrotate
app-admin/syslog-ng
app-arch/karchiver
app-arch/p7zip
app-arch/unrar
app-arch/unzip
app-benchmarks/bootchart
app-cdr/bin2iso
app-cdr/k3b
app-editors/gvim
app-editors/vim
app-emulation/kvm
app-emulation/vmware-modules
app-emulation/vmware-player
app-emulation/wine
app-misc/klive
app-misc/screen
app-portage/eix
app-portage/genlop
app-portage/gentoolkit
dev-db/mysql
dev-db/sqlite:3
dev-java/jfreechart
dev-lang/nasm
dev-lang/php
dev-libs/eventlog
dev-libs/expat
dev-util/ddd
dev-util/git
dev-util/subversion
games-emulation/dosbox
games-simulation/openttd
kde-base/kalarm
kde-base/kate
kde-base/kcalc
kde-base/kdebase-startkde
kde-base/kdemultimedia-kioslaves
kde-base/kdm
kde-base/kpdf
kde-misc/kdiff3
media-gfx/gimp
media-libs/sdl-gfx
media-libs/sdl-ttf
media-sound/alsa-utils
media-sound/amarok
media-sound/mplay
media-video/vlc
net-dialup/pptpclient
net-dns/noip-updater
net-im/pidgin
net-im/skype
net-misc/dhcpcd
net-misc/ntp
net-p2p/azureus
net-p2p/ctorrent
net-www/netscape-flash
sys-apps/slocate
sys-apps/sysvinit
sys-boot/grub
sys-devel/autoconf-wrapper
sys-devel/gdb
sys-kernel/gentoo-sources
sys-kernel/gentoo-sources:2.6.26-r3
sys-kernel/gentoo-sources:2.6.26-r4
sys-process/lsof
sys-process/vixie-cron
www-client/links
www-client/mozilla-firefox
www-client/opera
www-servers/apache
x11-apps/mesa-progs
x11-base/xorg-server
x11-drivers/nvidia-drivers
x11-terms/eterm |
Package.keywords
| Code: | games-simulation/openttd
#Needed for newest vmware
app-emulation/vmware-player
app-emulation/vmware-modules
x11-libs/libview
#28 will be stabilised once 29 is released
=sys-kernel/gentoo-sources-2.6.28*
#Still masked
sys-apps/baselayout
sys-apps/openrc
#These are needed for OpenRC and friends
sys-fs/udev
sys-apps/sysvinit
sys-apps/hal
sys-fs/cryptsetup
#I want unstable KVM.
app-emulation/kvm
#Trying 4.3
sys-devel/gcc |
Package.use
| Code: | dev-java/swt -firefox xulrunner
app-benchmarks/bootchart acct
app-benchmarks/bootchart java
games-simulation/openttd scenarios
app-editors/gvim bash-completion
dev-cpp/gtkmm accessibility
dev-lang/python sqlite
www-client/links -X -jpeg -png -sdl -tiff
media-video/vlc a52 aac aalib atmo cdda cddb cdio dts dvb flac fontconfig ggi id3tag jack libass libcaca libv4l2 live matroska modplug musepack optimisememory pvr pulseaudio schroedinger sdl-image shout speex stream svga taglib theora v4l v4l2 vcd x264
app-emulation/qemu-softmmu gnutls
app-emulation/kvm -alsa -esd gnutls
dev-util/subversion -webdav-neon
app-portage/layman subversion git |
Last edited by Letharion on Mon Feb 09, 2009 9:22 am; edited 1 time in total |
|
| Back to top |
|
 |
seqizz Tux's lil' helper


Joined: 14 Jan 2008 Posts: 96 Location: seqizz.net
|
Posted: Tue Feb 03, 2009 8:49 am Post subject: :\ |
|
|
Same here, --as-needed with ~x86, no break at all. Gnome desktop system. _________________ what about an answer here?
Turkish Gentoo-Wiki admin.. |
|
| Back to top |
|
 |
balkira Tux's lil' helper


Joined: 25 Dec 2004 Posts: 99 Location: /local/pub
|
Posted: Mon Feb 09, 2009 1:29 am Post subject: |
|
|
--as-needed works ok for me. Full Xfce4 desktop running.
| Code: | ACCEPT_KEYWORDS="~x86"
CHOST="i686-pc-linux-gnu"
CFLAGS="-O2 -march=native -pipe"
LDFLAGS="-Wl,--as-needed"
FEATURES="fixpackages candy parallel-fetch"
MAKEOPTS="-j3"
PORTAGE_NICENESS="19" # 19 lowest -19 highest
PORTAGE_ELOG_CLASSES="warn error log"
VIDEO_CARDS="intel"
INPUT_DEVICES="synaptics mouse keyboard evdev"
USE="X opengl cairo jpeg jpeg2k glitz bash-completion dbus alsa hal java \
ccache gtk xcb fuse ffmpeg sdl wifi apache2 mysql ncurses \
sqlite emerald svg v4l scanner cupsddk usb gphoto2 samba hddtemp \
acpi lm_sensors battery cpufreq git subversion sensord \
gnuplot imagemagick fbcondecor"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
|
_________________ no way to happiness, happiness is the way |
|
| Back to top |
|
 |
DigitalCorpus Apprentice


Joined: 30 Jul 2007 Posts: 245
|
Posted: Tue Feb 17, 2009 11:14 am Post subject: |
|
|
All but one package on my ~amd64 system compiles with --as-needed
make.conf excerpt
| Code: | CFLAGS="-march=core2 -O2 -pipe -mno-push-args -mcx16 -msahf"
#CFLAGS="-march=core2 -O2 -pipe"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,-z,now -Wl,--hash-style=gnu" # Use this till something breaks
#LDFLAGS="-Wl,-O1 -Wl,--sort-common -Wl,-z,now -Wl,--hash-style=gnu" # Then use this |
I evolved to using the extra CFLAGS system wide when I saw no crashes or instability. Same with LDFLAGS. _________________ Atlas (HDTV PVR, HTTP & Media server)
http://atlas.selfip.net/Info/ |
|
| Back to top |
|
 |
toralf Advocate


Joined: 01 Feb 2004 Posts: 2412 Location: Hamburg/Germany
|
Posted: Wed Feb 18, 2009 4:23 pm Post subject: |
|
|
| Works fine for an user mode linux image (stable x86, courier, cups, apache2, mysql). |
|
| Back to top |
|
 |
LoSeR_5150 Guru


Joined: 20 Mar 2005 Posts: 455 Location: San Francisco, CA
|
Posted: Tue Feb 24, 2009 9:41 pm Post subject: |
|
|
So far working without any noticeable problems on both my machines _________________ Opteron 1356@2.4Ghz
6GB DDR2 800Mhz
128MB Quadro NVS 210S
640GB Western Digital HD
*Gentoo-x86_64-2.6.30-r1
Opteron175@2.2GHz
2GB DDR 400MHz
256MB Quadro 1400 Go
(2) 80GB Segate HDs: RAID0
*Gentoo-x86_64-2.6.30-r1 |
|
| Back to top |
|
 |
CapnBuzzkill n00b

Joined: 16 Mar 2007 Posts: 23 Location: Holland
|
Posted: Thu Feb 26, 2009 11:44 pm Post subject: |
|
|
| I noticed today that app-text/sablotron-1.0.1 (x86) fails to emerge with --as-needed (it does emerge succesfully without it). After searching Bugzilla, I found this bug, which has a patch for version 1.0.3. I confirmed that app-text/sablotron-1.0.3 (~x86) does emerge with --as-needed, but I do wonder why version 1.0.1 is still the latest stable version when the patch for version 1.0.3 has been committed almost two years ago. (I didn't see any other bugs in Bugzilla that I think would prevent the stabilization of app-text/sablotron-1.0.3, but I could be wrong ofcourse). I can understand that "--as-needed"-bugs don't get the highest priority, but two years seems like a very long time, doesn't it? |
|
| Back to top |
|
 |
dreadlorde Apprentice


Joined: 16 Dec 2008 Posts: 243 Location: /adm/timezone/US_Michigan
|
Posted: Fri Feb 27, 2009 2:00 am Post subject: |
|
|
I've been using --as-needed for about a month now and haven't noticed any bugs from it so far.
 _________________ Ludwig von Mises Institute | Quote: | | I am not to be a shepherd, I am not to be a grave-digger. No longer will I speak to the people; for the last time I have spoken to the dead. |
|
|
| Back to top |
|
 |
mack1 Guru


Joined: 18 Mar 2006 Posts: 313
|
Posted: Wed Mar 04, 2009 12:38 pm Post subject: |
|
|
Same here !!!
I am using "--as-needed" on pentium4,core2 and k10 (AMD64) and it works fine.
My LDFLAGS:
| Code: |
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu -Wl,--sort-common -s"
|
|
|
| Back to top |
|
 |
natros n00b

Joined: 26 Sep 2003 Posts: 70
|
Posted: Wed Mar 04, 2009 1:34 pm Post subject: |
|
|
No problems here either
Is there any advantage using --hash-style=gnu ? _________________ -=[abit ip35 pro core2quad q6600 (oc 3.0 ghz) 8 gb ram 2x320 raid0 ext4 xfx8800gt 512mb]=- |
|
| Back to top |
|
 |
skutnar n00b

Joined: 13 Jun 2006 Posts: 65
|
Posted: Thu Mar 05, 2009 12:54 am Post subject: |
|
|
I've been running with system and world completely re-emerged using the gcc spec file --as-needed set up described by Flameeyes. I had no compilation problems (I'd already prepped device-mapper via http://bugs.gentoo.org/show_bug.cgi?id=259569) and no noticeable runtime issues.
As for --hash-style=gnu, the following is a little old, but may offer some background: http://bugs.gentoo.org/show_bug.cgi?id=259569 |
|
| Back to top |
|
 |
natros n00b

Joined: 26 Sep 2003 Posts: 70
|
Posted: Thu Mar 05, 2009 2:14 pm Post subject: |
|
|
The link you provided doesn't say anything about the --hash-style=gnu  _________________ -=[abit ip35 pro core2quad q6600 (oc 3.0 ghz) 8 gb ram 2x320 raid0 ext4 xfx8800gt 512mb]=- |
|
| Back to top |
|
 |
skutnar n00b

Joined: 13 Jun 2006 Posts: 65
|
Posted: Sat Mar 07, 2009 6:33 pm Post subject: |
|
|
Whoops! Sorry, I guess copy/paste didn't work right. Here's the page I meant: http://www.gentoo-wiki.info/HOWTO_Hashstyle
As I said, this is a little on the old side, but can be useful for some history. |
|
| Back to top |
|
 |
iBormuth n00b


Joined: 13 Jan 2004 Posts: 59
|
Posted: Tue Apr 07, 2009 3:26 pm Post subject: Cool |
|
|
| Wow, that sounds like a positive response all over the place. Same here. I'm using --as-needed since months without any problem so far. At least none that I knew of ;). It's a x86 stable system with ~1300 packages installed, ~200 lines in packages.keywords :P and gcc-4.3.3. |
|
| Back to top |
|
 |
justinkb Apprentice

Joined: 23 Dec 2008 Posts: 160
|
Posted: Tue Apr 07, 2009 6:51 pm Post subject: |
|
|
| works fine here. ~amd64 system, gcc 4.4.0svn with graphite flags enabled... solid as a rock on two machines. |
|
| Back to top |
|
 |
Uzytkownik Guru

Joined: 31 Oct 2004 Posts: 387 Location: London, UK
|
Posted: Sat Apr 11, 2009 11:01 pm Post subject: |
|
|
Works on ~x86+gnome-overlay+a few others but I have to admit the system was built originally with --add-needed in pararell. But no problems (unless this is relates). _________________ I've probably left my head... somwhere. Please wait untill I find it. |
|
| Back to top |
|
 |
TinheadNed Guru


Joined: 05 Apr 2003 Posts: 339 Location: Farnborough, UK
|
Posted: Thu Apr 16, 2009 4:43 pm Post subject: |
|
|
syslog-ng 2.1.4 isn't building for me on 2.1.4, I've put a bug out.
I have no idea how to fix it. |
|
| Back to top |
|
 |
Hwoarang Developer


Joined: 24 Feb 2007 Posts: 701 Location: Leeds, UK
|
Posted: Tue May 05, 2009 11:36 am Post subject: |
|
|
Fresh new ( 2 months ) Phenom installation, full --as-needed enabled. No problems at all  |
|
| Back to top |
|
 |
Yamakuzure l33t

Joined: 21 Jun 2006 Posts: 951 Location: Bardowick, Germany
|
Posted: Wed Jun 03, 2009 9:59 am Post subject: |
|
|
Two systems:
New PhenomII based system (since march 09), with everything installed using: | Code: | CFLAGS="-march=amdfam10 -O2 -pipe -mno-push-args -mcx16 -msahf -funroll-loops -ftree-vectorize"
LDFLAGS="-s -Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,-z,now -Wl,--hash-style=gnu"
CXXFLAGS="${CFLAGS}" | and my laptop I completely re-installed in january 2009 (Intel Core2) with | Code: | CFLAGS="-march=core2 -O2 -pipe -mno-push-args -mcx16 -msahf -funroll-loops -ftree-vectorize"
CXXFLAGS="${CFLAGS}"
LDFLAGS="-s -Wl,-O1 -Wl,--as-needed -Wl,--sort-common -Wl,-z,now -Wl,--hash-style=gnu" | both with absolutely no problems. _________________ I *do* know that I easily aggravate people due to my condensed writing. Rule of thumb: If I wrote anything that can be understood in two different ways, and one way offends you, then I meant the other!  |
|
| Back to top |
|
 |
rjtupas n00b


Joined: 26 Jul 2003 Posts: 59 Location: Coronado, CA USA
|
Posted: Thu Jul 30, 2009 12:40 am Post subject: Problems with Snort, SETools, and Rhythmbox Last FM plugin |
|
|
Set LDFLAGS to --as-needed and performed emerge -e world. Only issues encountered so far:
1. Snort would segfault on startup. Commented out LDFLAGS entry in make.conf and rebuilt snort to fix the problem. I suppose "fix" is a bad choice of words, but at least it confirmed the failure was due to the --as-needed LDFLAG.
2. During emerge -e world, setools would fail to compile. I have since rebuilt my system (emerge -e world) with the --as-needed LDFLAG disabled. Setools still fails to compile with the same error in libseaudit/swig/python. So at least this error is NOT due to the --as-needed LDFLAG. I will submit a separate bug on this one.
The errors stated,
| Code: | ... libseaudit/swig/python
fstatat64 is already defined
fslat64 is already defined ...
|
The same for lstat64 and slat64.
I also set MAKEOPT=-j1, but to no avail.
3. The lastfm plugin for Rhythmbox stopped working and could not be restarted. Rebuilding the system with the --as-needed LDFLAG disabled resolved this problem, confirming the error is due to the experimental flag. Haven't had time to investigate further.
Any insight would be appreciated. I did read flameeyes' guide, but none of the common problems seemed to apply.
TIA,
Randy
Last edited by rjtupas on Sun Aug 02, 2009 5:59 am; edited 3 times in total |
|
| Back to top |
|
 |
Bircoph Apprentice


Joined: 27 Jun 2008 Posts: 241
|
Posted: Fri Jul 31, 2009 5:29 pm Post subject: |
|
|
I read this topic, mostly it is success story and I tried myself. My make.conf is available here: http://forums.gentoo.org/posting.php?mode=quote&p=5871986
For the start I tested on single, but near-critical application for me: sci-physics/root. This is complicated and rather fragile program, thus this is good test for anything new, especially taking into account I need it for my work.
So I changed added "-Wl,--as-needed" to my LDFLAGS. root compiles ok, it starts ok, e.g. no unresolved symbol failures, it works. But(!) on some functions it failed, it silently freezes, no error messages, no logs, it just hangs up. strace reveals a failure point in some futex() lockup after dynamical loading of some libs and object dictionaries, I haven't explored the problem further.
In no doubt this is fixable, but I'm afraid with a large effort, I doubt recursive recompilation of all involved libraries will help (root's dictionaries systems sometimes makes me cry).
What is worse, this failure is run-time and silent. I can afford compilation failure of application due to some option, I may handle this in time or fallback to previous state, but run-time failure of mission-critical application is absolutely unacceptable. That's why I consider -Wl,--as-needed as unsafe linking option and unfortunately refuse it for now. _________________ Per aspera ad astra! |
|
| Back to top |
|
 |
Mike Hunt Watchman


Joined: 19 Jul 2009 Posts: 5287
|
Posted: Tue Aug 04, 2009 3:47 pm Post subject: |
|
|
I've been using -Wl,--as-needed for at least 2-3 years - maybe longer. Used to be imlib failed to emerge with -Wl,--as-needed but that has been solved for a long time.
The only issue today is media-plugins/live and samba fail to build with -Bdirect. Otherwise everything runs perfectly.
| Code: | # emerge --info | head -n1
Portage 2.2_rc33 (default/linux/x86/2008.0/desktop, gcc-4.3.3, glibc-2.9_p20081201-r2, 2.6.30-gentoo-r4 i686)
# qlist -I | wc -l
1160 |
|
|
| Back to top |
|
 |
|