On 11/21/18, Edward Diener <[email protected]> wrote: > On 11/20/2018 11:55 PM, Ozkan Sezer wrote: >> On 11/21/18, Edward Diener >> <[email protected]> wrote: >>> On 11/20/2018 10:50 PM, Ozkan Sezer wrote: >>>> On 11/21/18, Edward Diener >>>> <[email protected]> wrote: >>>>> I am building an application using clang-7.0 targeting gcc with >>>>> mingw-64/gcc-8.1 as the backend. The application shows no errors >>>>> compiling or linking. When I try to debug the application I get the >>>>> messages from within gdb: >>>>> >>>>> [New Thread 6432.0x1b38] >>>>> Mingw-w64 runtime failure: >>>>> Unknown pseudo relocation protocol version 65536 >>>>> >>>>> When building/running the same application with just mingw-64/gcc-8.1 >>>>> everything works fine. >>>>> >>>>> I realize that this is a clang-7.0 problem and may well be that I can >>>>> not use gcc-8.1 as my clang-7.0 backend for some reason. But I was >>>>> wondering if anybody on the mingw-64/gcc side would have any idea what >>>>> would cause the run-time error to occur ? >>>>> >>>> >>>> This may be related: >>>> https://sourceware.org/bugzilla/show_bug.cgi?id=23872 >>>> >>>> If it is the case, you will need an updated binutils >>>> (or manually edit your linker scripts.) >>> >>> Thanks for the help. >>> >>> How do I get an updated binutils for mingw.w64 ? >> >> Toolchain builders will need to adopt that change and post >> new toolchains >> >>> Where is the linker script located in a mingw.w64 distro ? >> >> It is usually at <toolchain_rootdir>/<target>/lib/ldscripts >> E.g.: d:\mingw32\i686-w64-mingw32\lib\ldscripts >> or d:\mingw64\x86_64-w64-mingw32\lib\ldscripts >> > For gcc-8.1 x64, let's say, there is an 'ldscripts' directory at > <toolchain_rootdir>\mingw-w64\x86_64-8.1.0-posix-seh-rt_v6-rev0\mingw64\x86_64-w64-mingw32\lib\ldscripts. > > In that directory is a number of files starting with i386pe. and > i386pep. and the comment for these are that they are linker scripts. > > Do I need to alter all of these or just the i386pe.x and i386pep.x files ? > > In each file is the line '. = ALIGN(__section_alignment__);' but I also > occasionally see another '. = ALIGN(n);' line occasionally. So how do I > modify the file(s) ?
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;a=commitdiff;h=73af69e74974eaa155eec89867e3ccc77ab39f6d I think, in all of those scripts, you should find the line (there should be only one instance of it): __rt_psrelocs_start = .; Insert the new alignment directive just before that line. _______________________________________________ Mingw-w64-public mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
