Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Call for --as-needed testing
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
jmbsvicetto
Moderator
Moderator


Joined: 27 Apr 2005
Posts: 4734
Location: Angra do Heroísmo (PT)

PostPosted: Sun Nov 16, 2008 5:48 pm    Post subject: Call for --as-needed testing Reply with quote

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
View user's profile Send private message
widremann
Veteran
Veteran


Joined: 14 Mar 2005
Posts: 1314

PostPosted: Sat Dec 27, 2008 4:14 pm    Post subject: Reply with quote

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
View user's profile Send private message
ppurka
Advocate
Advocate


Joined: 26 Dec 2004
Posts: 3256

PostPosted: Sat Dec 27, 2008 4:31 pm    Post subject: Reply with quote

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 | Now using kde5 | e is unstable :-/
Back to top
View user's profile Send private message
Letharion
Veteran
Veteran


Joined: 13 Jun 2005
Posts: 1344
Location: Sweden

PostPosted: Tue Jan 20, 2009 4:04 pm    Post subject: Reply with quote

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
View user's profile Send private message
seqizz
Tux's lil' helper
Tux's lil' helper


Joined: 14 Jan 2008
Posts: 103

PostPosted: Tue Feb 03, 2009 8:49 am    Post subject: :\ Reply with quote

Same here, --as-needed with ~x86, no break at all. Gnome desktop system.
Back to top
View user's profile Send private message
balkira
Tux's lil' helper
Tux's lil' helper


Joined: 25 Dec 2004
Posts: 116
Location: /local/pub

PostPosted: Mon Feb 09, 2009 1:29 am    Post subject: Reply with quote

--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
View user's profile Send private message
DigitalCorpus
Apprentice
Apprentice


Joined: 30 Jul 2007
Posts: 283

PostPosted: Tue Feb 17, 2009 11:14 am    Post subject: Reply with quote

All but one package on my ~amd64 system compiles with --as-needed
Code:
sys-power/nut


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://mobrienphotography.com/
Back to top
View user's profile Send private message
toralf
Developer
Developer


Joined: 01 Feb 2004
Posts: 3922
Location: Hamburg

PostPosted: Wed Feb 18, 2009 4:23 pm    Post subject: Reply with quote

Works fine for an user mode linux image (stable x86, courier, cups, apache2, mysql).
Back to top
View user's profile Send private message
LoSeR_5150
Guru
Guru


Joined: 20 Mar 2005
Posts: 455
Location: San Francisco, CA

PostPosted: Tue Feb 24, 2009 9:41 pm    Post subject: Reply with quote

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
View user's profile Send private message
CapnBuzzkill
n00b
n00b


Joined: 16 Mar 2007
Posts: 23
Location: Holland

PostPosted: Thu Feb 26, 2009 11:44 pm    Post subject: Reply with quote

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
View user's profile Send private message
dreadlorde
Apprentice
Apprentice


Joined: 16 Dec 2008
Posts: 243
Location: /adm/timezone/US_Michigan

PostPosted: Fri Feb 27, 2009 2:00 am    Post subject: Reply with quote

I've been using --as-needed for about a month now and haven't noticed any bugs from it so far.

:D
_________________
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
View user's profile Send private message
mack1
Guru
Guru


Joined: 18 Mar 2006
Posts: 315

PostPosted: Wed Mar 04, 2009 12:38 pm    Post subject: Reply with quote

Same here :D !!!
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
View user's profile Send private message
natros
n00b
n00b


Joined: 26 Sep 2003
Posts: 70

PostPosted: Wed Mar 04, 2009 1:34 pm    Post subject: Reply with quote

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
View user's profile Send private message
skutnar
n00b
n00b


Joined: 13 Jun 2006
Posts: 65

PostPosted: Thu Mar 05, 2009 12:54 am    Post subject: Reply with quote

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 https://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: https://bugs.gentoo.org/show_bug.cgi?id=259569
Back to top
View user's profile Send private message
natros
n00b
n00b


Joined: 26 Sep 2003
Posts: 70

PostPosted: Thu Mar 05, 2009 2:14 pm    Post subject: Reply with quote

skutnar wrote:
...
As for --hash-style=gnu, the following is a little old, but may offer some background: https://bugs.gentoo.org/show_bug.cgi?id=259569

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
View user's profile Send private message
skutnar
n00b
n00b


Joined: 13 Jun 2006
Posts: 65

PostPosted: Sat Mar 07, 2009 6:33 pm    Post subject: Reply with quote

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
View user's profile Send private message
iBormuth
n00b
n00b


Joined: 13 Jan 2004
Posts: 59

PostPosted: Tue Apr 07, 2009 3:26 pm    Post subject: Cool Reply with quote

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
View user's profile Send private message
justinkb
Apprentice
Apprentice


Joined: 23 Dec 2008
Posts: 161

PostPosted: Tue Apr 07, 2009 6:51 pm    Post subject: Reply with quote

works fine here. ~amd64 system, gcc 4.4.0svn with graphite flags enabled... solid as a rock on two machines.
Back to top
View user's profile Send private message
Uzytkownik
Guru
Guru


Joined: 31 Oct 2004
Posts: 399
Location: Bay Area, US

PostPosted: Sat Apr 11, 2009 11:01 pm    Post subject: Reply with quote

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
View user's profile Send private message
TinheadNed
Guru
Guru


Joined: 05 Apr 2003
Posts: 339
Location: Farnborough, UK

PostPosted: Thu Apr 16, 2009 4:43 pm    Post subject: Reply with quote

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
View user's profile Send private message
Hwoarang
Retired Dev
Retired Dev


Joined: 24 Feb 2007
Posts: 701
Location: Leeds, UK

PostPosted: Tue May 05, 2009 11:36 am    Post subject: Reply with quote

Fresh new ( 2 months ) Phenom installation, full --as-needed enabled. No problems at all :)
Back to top
View user's profile Send private message
Yamakuzure
Advocate
Advocate


Joined: 21 Jun 2006
Posts: 2283
Location: Adendorf, Germany

PostPosted: Wed Jun 03, 2009 9:59 am    Post subject: Reply with quote

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.
_________________
Important German:
  1. "Aha" - German reaction to pretend that you are really interested while giving no f*ck.
  2. "Tja" - German reaction to the apocalypse, nuclear war, an alien invasion or no bread in the house.
Back to top
View user's profile Send private message
rjtupas
n00b
n00b


Joined: 26 Jul 2003
Posts: 59
Location: Coronado, CA USA

PostPosted: Thu Jul 30, 2009 12:40 am    Post subject: Problems with Snort, SETools, and Rhythmbox Last FM plugin Reply with quote

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
View user's profile Send private message
Bircoph
Developer
Developer


Joined: 27 Jun 2008
Posts: 261
Location: Moscow

PostPosted: Fri Jul 31, 2009 5:29 pm    Post subject: Reply with quote

I read this topic, mostly it is success story and I tried myself. My make.conf is available here: https://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
View user's profile Send private message
Mike Hunt
Watchman
Watchman


Joined: 19 Jul 2009
Posts: 5287

PostPosted: Tue Aug 04, 2009 3:47 pm    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum