It is worse for me. Absolutely no applications, be they C++ or C, are
linked properly. Consider this small example:

#include <stdio.h>
#include <string.h>

__attribute__((noinline))
int f(const char *a, const char *b) { return strcmp(a, b); }

int main() { printf("%x\n", f("foo", "bar")); }

If you compile it dynamically, you get a segfault due to strcmp being placed in 
a non-executable page.
If you compile it statically, you get the address of function _libc_start 
instead of executing strcmp.

Same thing happens with strlen et al, which explains that all
applications a bit complicated will segfault before even reaching main
(due to dynamic loading relying on strlen).

This is on Lucid Lynx with binutils 2.20.1-3ubuntu5 on amd64. It was
working fine on Karmic.

-- 
lucid gold makes nearly all C++ applications segfault before main()
https://bugs.launchpad.net/bugs/582754
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to