bug-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug #29845] FTBFS on GNU/Hurd with -Wl,--no-undefined


From: Richard Frith-Macdonald
Subject: [bug #29845] FTBFS on GNU/Hurd with -Wl,--no-undefined
Date: Wed, 09 Jun 2010 10:19:49 +0000
User-agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-us) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari/533.16

Follow-up Comment #4, bug #29845 (project gnustep):

Ah ... so '-Wl,-z,defs -Wl,--as-needed' has a similar effect to
'-Wl,--no-undefined'

In that case this is really not a bug ... the linker flags are telling the
link to fail since the fake main mechanism *requires* the
gnustep_base_user_main() function to be undefined as it is supplied by the
program which is using gnsutep.

ie. your program implements gnustep_base_user_main() and the base library
calls the method in your program from the main() function in NSProcessInfo.m

So this is more a package bug (building base with illegal linker flags), than
a gnustep bug, but I guess either way we want to fix it somehow.

So ... there are two obvious options:
1. change the package script to change the linker flags ... but as they do
something useful (as well as breaking things), that's not ideal.
2. add hurd support to avoid the need for fake-main

The reason for the existence of fake-main is to allow the NSProcessInfo class
to be properly initialized with the process arguments and environment.
On many platforms we can get that information from the /proc filesystem or by
some other system specific mechanism.
On platforms where there is no known mechanism to get that information, we
have to use the argc, argv, and envp arguments to main() (which is what the
fake-main does for us).

If there's a hurd specific way to obtain that info, we could change the
configure.ac to detect its presence and add code to use it instead of
fake-main.  Do you know of a way to do it?

I suppose another option is just to change the makefile to filter out the
linker flags which cause the trouble, but that's not much better than changing
the package build script to refrain from using the flags.


    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?29845>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]