<div dir="ltr">So the problem I have now is that GCC spins when compiling anything (inside QEMU)<div>:(</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 3 November 2014 22:40, David Halls <span dir="ltr"><<a href="mailto:dahalls@gmail.com" target="_blank">dahalls@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><span class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Doing this in nptl/sysdeps/unix/sysv/linux/x86_64/pthread_once.S:</div><div><br></div><div><div> +       .hidden __fork_generation</div><div>         .comm   __fork_generation, 4, 4</div></div><div><br></div><div>fixes the compile problem - have to hide __fork_generation in the assembly, like the C declaration does.</div><div>(I have yet to test the TLS stuff in the image.)</div><div><br></div></div></div></div></blockquote><div><br></div></span><div>I no longer get the TLS warning on x86_64. FYI this I what I did:</div><div><br></div><div>Applied the patch above (added .hidden __fork_generation).</div><div><br></div><div><div>Add these lines to sources/baseconfig-uClibc:</div><div><br></div><div>UCLIBC_HAS_TLS=y</div><div>UCLIBC_HAS_STDIO_FUTEXES=y</div><div>UCLIBC_HAS_SSP=y</div><div><br></div><div>(I needed SSP to compile Perl).</div><span class=""><div><br></div><div>Remove this line from sources/targets/x86_64:</div><div><br></div><div>LINUXTHREADS_OLD=y</div></span></div><div><br></div></div></div></div>
</blockquote></div><br></div>