[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #8, bug #24109 (project gnustep): Nicola wrote: libgnustep-gui is not linked against libobjc. That is done on purpose (eg see #9920). It is not clear from that bug *why* it is done on purpose... So ... what advantages would this change bring ? It's the other way around -- what advantages does it bring if not linking? Richard wrote: If we changed the compatibility layer in GSObjCRuntime.h in the base library so that we wrapped all of the runtime functions, libraries would be able to link with just base and not libobjc. GUI uses libobjc directly at least in GSTheme, I think. But apart from that, is your proposal possible at all? Aren't Objective-C libraries/applications expected to be able to call runtime functions without hassle if they wish so? Isn't linking also needed for proper initialization (admittedly, this happens anyway as the app is linked with the runtime)? ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org https://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #7, bug #24109 (project gnustep): There was no follow up on this... Nicola's explanation makes a lot of sense, should we reject this feature request? ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org https://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #7, bug #24109 (project gnustep): http://news.meta.ua/redirect.php?url=vids247.cn/tila-tequila-nude http://news.meta.ua/redirect.php?url=vids247.cn/dogfuck http://news.meta.ua/redirect.php?url=vids247.cn/keezmovies http://news.meta.ua/redirect.php?url=vids247.cn/miley-cyrus-nude http://news.meta.ua/redirect.php?url=vids247.cn/xxxtube http://news.meta.ua/redirect.php?url=vids247.cn/sextube-com http://news.meta.ua/redirect.php?url=vids247.cn/zootube247-com http://news.meta.ua/redirect.php?url=vids247.cn/girls-fucking-animals http://news.meta.ua/redirect.php?url=vids247.cn/qporno http://news.meta.ua/redirect.php?url=vids247.cn/emma-watson-upskirt http://news.meta.ua/redirect.php?url=vids247.cn/john-cena-naked http://news.meta.ua/redirect.php?url=vids247.cn/robbs-celebrity-oops http://news.meta.ua/redirect.php?url=vids247.cn/girls-fucking-horses http://news.meta.ua/redirect.php?url=vids247.cn/brenda-song-nude http://news.meta.ua/redirect.php?url=vids247.cn/miley-cyrus-naked http://news.meta.ua/redirect.php?url=vids247.cn/dreammovies http://news.meta.ua/redirect.php?url=vids247.cn/xxxstash http://news.meta.ua/redirect.php?url=vids247.cn/animalssex http://news.meta.ua/redirect.php?url=vids247.cn/zoo-tube-247-com http://news.meta.ua/redirect.php?url=vids247.cn/zooskool http://news.meta.ua/redirect.php?url=vids247.cn/women-fucking-dogs http://news.meta.ua/redirect.php?url=vids247.cn/miley-cyrus-upskirt http://news.meta.ua/redirect.php?url=vids247.cn/girls-fucking-dogs http://news.meta.ua/redirect.php?url=vids247.cn/www-zootube247 http://news.meta.ua/redirect.php?url=vids247.cn/sunporno ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Update of bug #24109 (project gnustep): Category: Gui/AppKit = Makefiles Item Group:None = Change Request Status: Fixed = In Progress Open/Closed: Closed = Open ___ Follow-up Comment #5: I'm confused ... this looks like a request for a change in behaviour, not a bug report ;-) libgnustep-gui is not linked against libobjc. That is done on purpose (eg see #9920). Only the final executable program is linked against all the libraries. We can discuss if this is good or bad, but it's currently the expected behaviour; we need to have a longer discussion if we want to change it - it's not a bug fix, it's a change. :-) If we want to change it, I guess we want to change it for all ObjC libraries, not just gnustep-gui. So the change would go in gnustep-make. It doesn't really make much sense to change gnustep-gui only. So ... what advantages would this change bring ? Thanks ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #6, bug #24109 (project gnustep): I can't speak for this particular case, but... As per Debian Policy it is a bug if a program or a library has unresolved symbols; this is to ensure that the shlibs system works properly and all dependencies for the package are computed correctly (there are some exceptions like python extensions, etc.) Many packages pass `-Wl,--as-needed' during build to strip unnecessary dependencies, and additionally `-Wl,-z,defs' for extra safety. It appears that this has become common practice for Fedora and Mandriva too. Superfluous dependencies just make library transitions harder (and user's experience too, as they install extra packages they don't need), and missing dependencies cause mystical runtime failures that are sometimes hard to debug. (The latter is almost impossible in this case, but still...) ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #2, bug #24109 (project gnustep): but gnustep-base and gnustep-back does not have this problem. ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Follow-up Comment #3, bug #24109 (project gnustep): It's not GNUstep Make's fault. It is the developer's responsibility to ensure that LIBRARIES_DEPEND_UPON contains all the libraries the built library has to link with; gnustep-make does not add anything by default (and that's how it should be, as it has no knowledge about the required libs). The attached patch works for me. (file #16326) ___ Additional Item Attachment: File name: no-undefined.patch Size:0 KB ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
Update of bug #24109 (project gnustep): Category: Makefiles = Gui/AppKit Status:None = Fixed Open/Closed:Open = Closed ___ Follow-up Comment #4: I stand corrected ... patch applied. Thanks. Though ... I wonder if gui ought to depend on libobjc directly. If we changed the compatibility layer in GSObjCRuntime.h in the base library so that we wrapped all of the runtime functions, libraries would be able to link with just base and not libobjc. ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep
[bug #24109] gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl, --as-needed -Wl, --no-undefined
URL: http://savannah.gnu.org/bugs/?24109 Summary: gnustep-gui 0.14.0 does not build with LDFLAGS=-Wl,--as-needed -Wl,--no-undefined Project: GNUstep Submitted by: fundawang Submitted on: Wed 20 Aug 2008 11:41:21 AM GMT Category: Gui/AppKit Severity: 3 - Normal Item Group: None Status: None Privacy: Public Assigned to: None Open/Closed: Open Discussion Lock: Any ___ Details: When LDFLAGS is set to -Wl,--as-needed -Wl,--no-undefined, gnustep-gui 0.14.0 produces a lot of undefined refereces, such as: obj/NSDocument.o: In function `-[NSDocument makeWindowControllers]': /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:371: undefined reference to `objc_get_class' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:371: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:371: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:373: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:374: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:378: undefined reference to `objc_get_class' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:378: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:378: undefined reference to `objc_msg_lookup' obj/NSDocument.o: In function `-[NSDocument showWindows]': /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:391: undefined reference to `objc_msg_lookup' obj/NSDocument.o: In function `-[NSDocument updateChangeCount:]': /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:402: undefined reference to `objc_msg_lookup' /home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:427: undefined reference to `objc_msg_lookup' obj/NSDocument.o:/home/fwang/gnustep-gui/BUILD/gnustep-gui-0.14.0/Source/NSDocument.m:431: more undefined references to `objc_msg_lookup' follow Maybe some more -l libs should be used? ___ Reply to this item at: http://savannah.gnu.org/bugs/?24109 ___ Message sent via/by Savannah http://savannah.gnu.org/ ___ Bug-gnustep mailing list Bug-gnustep@gnu.org http://lists.gnu.org/mailman/listinfo/bug-gnustep