Closed telans closed 4 years ago
I don't mind if issues are reported here, and I also use GentooLTO.
Is your mingw64-runtime built with LTO? (nevermind this my mingw64-runtime fails with LTO)
Can you send me the output of emerge --info
~Is your mingw64-runtime built with LTO?~ (nevermind this my mingw64-runtime fails with LTO)
Yeah it's just built using the default crossdev flags. I may have been an idiot and forgot to include USE="-vtv", so that's building at the moment.
emerge --info
: https://hastebin.com/opidigopuh.sql
emerge --info
from PORTAGE_CONFIGROOT=/usr/i686-w64-mingw32:
https://hastebin.com/ucuyizedew.makefile
Cheers
EDIT: USE="-vtv" didn't help unfortunately.
I noticed you have the lto
useflag enabled globally.
Based on the errors in your first post I think you need to disable the lto
useflag for gcc via package.use.
cross-i686-w64-mingw32/gcc -lto
cross-x86_64-w64-mingw32/gcc -lto
I'm going to see if building cross-i686-w64-mingw32/gcc-10.1.0
with USE=lto
causes the same error.
EDIT: cross-i686-w64-mingw32/gcc-10.1.0
with USE=lto
built without issues I'll try again with gcc-9.3.0.
I definitely put -lto
within package.use/cross-i686-w64-mingw32
but looks like that got reset... Thanks for poing that out, rebuilding now
EDIT: No change with the error.
This is the command I'm using when building the toolchain from scractch: crossdev --ov-output /var/db/repos/telans/ i686-w64-mingw32 --env 'USE="-fortran -vtv -sanitize -lto -pgo"'
, I'm sure there's nothing iffy there right? Using crossdev-9999
I don't see anything iffy, but then again I don't normally use the --env
option. I also use crossdev version 20200131, but I don't see how that would cause your error.
Also, I was able to rebuild cross-i686-w64-mingw32/gcc-9.3.0 with the lto
useflag, so I'm still not sure how to reproduce this. I'll see what happens if I create the toolchain from scratch.
In the meantime can you send me your /etc/portage/make.conf
?
Sure thing:
From /
: https://hastebin.com/ujebazesej.makefile
From /usr/i686-w64-mingw32/
: https://hastebin.com/omugukaqaz.ini
I really do need to clean up my globals. I know gcc uses zstd
, so I've disabled that flag and am rebuilding to test that
EDIT: Nope, still errors out
I still can't reproduce your error.
What version of glibc do you have, and does it have the custom-cflags
useflag set?
sys-libs/glibc-2.31-r3
, only multiarch
& ssp
are enabled. Thanks for your help, I'm just as stumped as you are. Perhaps it might be time to file a bug report?
Just to confirm, crossdev --ov-output /something i686-w64-mingw32
builds fine for you with ~x86/amd64?
I use crossdev -t i686-w64-mingw32
since I already have a local overlay called crossdev I don't need --ov-output
.
I have *FLAGS-=-flto*
set for mingw64-runtime in my package.cflags.
I also apply a patch to binutils-2.34 that fixes a crash that DXVK has if built with it.
My default keyword is amd64, but my gcc, glibc, and binutils are ~amd64.
I commented out all my global USE flags (make.conf), commented out everything GentooLTO and it built. At least that gives me an area to narrow it down to. I'm just glad it's working now, thanks! I have a feeling I probably need *FLAGS-=-flto*
set
EDIT: Failed with just GentooLTO, trying *FLAGS-=-flto*
with mingw64-runtime
The only packages that I needed *FLAGS-=-flto*
is mingw64-runtime.
I've commented out my package.cflags mingw64-runtime entries to see if something else happens.
Yep, that flag setting alone fixes it. Thanks! I should probably submit a PR to GentooLTO about it
Removing those mingw64-runtime entries triggered the error.
I'll update my guide with those package.cflags entries.
cross-i686-w64-mingw32/mingw64-runtime: 35 seconds average for 38 merges
On a side note, the "Will also need to enable the libraries useflag in mingw64-runtime" section in the app-emulation readme has incorrect package category names, "w64" is missing
Oof, Thanks for catching that. I keep forgetting to add w64.
Hello, I know that this isn't the correct place to report these bug but it you could provide any help regarding this issue I would be very grateful.
I have been trying to set up the mingw build environment in order to build wine-staging with mingw, but it's not going that well.
I've been encountering linking errors with the gcc-stage2 build failing, occuring with both 9.3.0 as well as 10.1.0. The first issue with this I had is with the USE flag
fortran
which once disabled allows me to progress a little further.At first I thought it might have been due to the GentooLTO flags, however crossdev strips all of these so I don't see how that could be an issue.
Fortran error:
cross-i686-w64-mingw32-gcc-stage2.log.zip (remove ".zip" if you want to take a look, github being weird)
The issue I have after disabling Fortran is the following linking error with libstdc++6.dll:
no-fortran-cross-i686-w64-mingw32-gcc-stage2.log.zip
USE="-sanitize" hasn't changed anything for me either.
I have looked all over the Gentoo bug tracker for anything fitting my issue, but I've had no luck finding anything useful.
Thanks