www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - "Section .tbss mismatches non-TLS reference" - what??

reply Dejan Lekic <dejan.lekic tiscali.co.uk> writes:
Hello everybody - any idea why am I getting this error?
I successfully compiled this library few months ago, not it fails to 
build... :(

----------------------- 8< -------------------------------------- begin
dejan mrak ~/prj/d/dcurses-backup
$ make
gcc obj/Debug/dcurses.o obj/Debug/dl_c_curses_curses.o 
obj/Debug/dl_c_curses_panel.o -o bin/Debug/dcurses -lncurses -lphobos2 
-lpthread -lm
/usr/bin/ld: stdscr: TLS definition in obj/Debug/dl_c_curses_curses.o 
section .tbss mismatches non-TLS reference in /lib64/libncurses.so.5
/lib64/libncurses.so.5: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [bin/Debug/dcurses] Error 1
------------------------------------------ >8 ------------------- end

/lib64/libncurses.so.5 is absolutely fine (it is a symlink to 
libncurses.so.5.8) - many applications on my Fedora 15 box are linked 
against it - they all work nicely. :)
Oct 19 2011
next sibling parent Trass3r <un known.com> writes:
 /usr/bin/ld: stdscr: TLS definition in obj/Debug/dl_c_curses_curses.o  
 section .tbss mismatches non-TLS reference in /lib64/libncurses.so.5

Looks like some definition is missing a shared/__gshared.
Oct 19 2011
prev sibling parent Jude Young <10equals2 gmail.com> writes:
--20cf3002583a0f6c0204afb047af
Content-Type: text/plain; charset=ISO-8859-1

Oh yeah, D2 put everything (IIRC) into Thread Local Storage, unless you tell
it not to.
 C puts most everything into global storage.

This causes a mismatch. If you're working on translating the curses headers
into D, I'm attempting the same.
I'd love some help, as I have never really worked with C/C++


On Wed, Oct 19, 2011 at 12:54 PM, Trass3r <un known.com> wrote:

 /usr/bin/ld: stdscr: TLS definition in obj/Debug/dl_c_curses_curses.o
 section .tbss mismatches non-TLS reference in /lib64/libncurses.so.5

Looks like some definition is missing a shared/__gshared.

--20cf3002583a0f6c0204afb047af Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Oh yeah, D2 put everything (IIRC) into Thread Local Storage, unless you tel= l it not to.<br>=A0C puts most everything into global storage.<br><br>This = causes a mismatch. If you&#39;re working on translating the curses headers = into D, I&#39;m attempting the same. <br> I&#39;d love some help, as I have never really worked with C/C++<br><br><br=
<div class=3D"gmail_quote">On Wed, Oct 19, 2011 at 12:54 PM, Trass3r <span=

 wrote:<br>

x #ccc solid;padding-left:1ex;"><div class=3D"im"><blockquote class=3D"gmai= l_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left= :1ex"> /usr/bin/ld: stdscr: TLS definition in obj/Debug/dl_c_curses_curses.o secti= on .tbss mismatches non-TLS reference in /lib64/libncurses.so.5<br> </blockquote> <br></div> Looks like some definition is missing a shared/__gshared.<br> </blockquote></div><br> --20cf3002583a0f6c0204afb047af--
Oct 19 2011