lhmouse / MINGW-packages

Package scripts for GCC with the MCF thread model
https://gcc-mcf.lhmouse.com/
BSD 3-Clause "New" or "Revised" License
12 stars 1 forks source link

mingw with windows gcc plugin suppot is missing #1

Closed labba closed 4 years ago

labba commented 5 years ago

hi i'm using windows Mingw and couldn't find a copmlete build of Mingw with latest gcc that was gcc configure with "--enable-plugin" can you please build and upload a new build with gcc configured with "----enable-plugin" ? it should generate a new folder that is now missing in the latest build the new folder should be generate in "mingw32\lib\gcc\i686-w64-mingw32\8.3.1" as a "plugin" folder with some libs and includes so it would be possible to compile plugins also in windows build.. it was published here that this is now supported : https://www.phoronix.com/scan.php?page=news_item&px=GCC-Plugins-Windows-MinGW

lhmouse commented 5 years ago

Looks like something interesting :+1:. Building now.

BTW you may try building yourself by invoking the command makepkg-mingw in the mingw-w64-gcc-git directory in a MSYS2 shell.

lhmouse commented 5 years ago

Done. New builds are now available at https://gcc-mcf.lhmouse.com/.

SHA-1 checksums:

ba2dec40191d377cfc74b5a33b56cdc6c36adf30 *mingw32.7z
eeb47806458eff9caf307dde840d9f671552361a *mingw64.7z
labba commented 5 years ago

thanks!

i have tried building from git and gotten the following error after a while:

make[3]: Leaving directory '/c/gcc/MINGW-packages/mingw-w64-gcc-git/src /build-x86_64-w64-mingw32' Comparing stages 2 and 3 warning: gcc/cc1obj-checksum.o differs warning: gcc/cc1objplus-checksum.o differs Bootstrap comparison failure! gcc/optabs-libfuncs.o differs make[2]: [Makefile:23396: compare] Error 1 make[2]: Leaving directory '/c/gcc/MINGW-packages/mingw-w64-gcc-git/src /build-x86_64-w64-mingw32' make[1]: [Makefile:23376: stage3-bubble] Error 2 make[1]: Leaving directory '/c/gcc/MINGW-packages/mingw-w64-gcc-git/src /build-x86_64-w64-mingw32' make: *** [Makefile:949: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting...

lhmouse commented 5 years ago

Hmm perhaps something (including system headers, libraries etc.) changed during your build. Or there was some misconfiguration of your environment that caused a wrong compiler to be invoked for that stage.

labba commented 5 years ago

i think its misconfiguration on my env. but i haven't seen any clear environment setup requirements.

lhmouse commented 5 years ago

Running makepkg-mingw inside an MSYS2 shell (not a mingw32 or mingw64 shell) should suffice. In reality that isn't what I do. I have my PATH set like /mingw64/bin:/mingw32/bin:/usr/bin:<...> and invoke makepkg-mingw in CMD, and that should just work.

labba commented 5 years ago

it's not enough since while i have compiled i found that i was missing "diffutils" package that is also missging that wasn't reported as required also "tar" wasn't required and i had to install it.

so the pre-requirement are still not complete and need to give a try and build on top of a clean system to find what is the needed pre-requisites to have a good build like is being done on a docker like image that you can see in the script how it build the entire environment and compile it.

lhmouse commented 5 years ago

Try pacman -S base-devel.

labba commented 5 years ago

is there someone that build GCC for window (32 bit version) but without all the MCF model ? something lighter ? couldn't find any beside your version that works amazing but requires all the DLLs imports of the MCF build when i'm using a plugin on windows ..

lhmouse commented 5 years ago

You may build one yourself.

pacman -S base-devel mingw-w64-{i686,x86_64}-toolchain
git clone https://github.com/msys2/MINGW-packages.git
cd MINGW-packages/mingw-w64-gcc-git
makepkg-mingw
labba commented 4 years ago

sorry for not returning to this .. i have stopped since it never successfully compiled so now that i have a lot of time i can document every step that i have done on a clean system and i hope you will be able to help me.

here are the full steps until compilation failure i got:

OS: installation on Win10 x64.

1, install msys - msys2-x86_64-20200602 https://www.msys2.org

  1. Trying to install packadge failed $ makepkg-mingw => WARNING: You don't have installed mingw-w64 toolchain for architecture x86_64. => WARNING: To install it run: 'pacman -S mingw-w64-x86_64-toolchain' => WARNING: You don't have installed mingw-w64 toolchain for architecture i686. => WARNING: To install it run: 'pacman -S mingw-w64-i686-toolchain'

  2. installing all dev pack $ pacman -S base-devel

  3. Clean install doesn't have git… so install git pacman -S git

  4. git clone https://github.com/msys2/MINGW-packages.git

  5. cd MINGW-packages/mingw-w64-gcc-git makepkg-mingw

=> WARNING: You don't have installed mingw-w64 toolchain for architecture x86_64. => WARNING: To install it run: 'pacman -S mingw-w64-x86_64-toolchain' => WARNING: You don't have installed mingw-w64 toolchain for architecture i686. => WARNING: To install it run: 'pacman -S mingw-w64-i686-toolchain'

  1. since we are still missing toolchain installing more required toolchain:

pacman -S mingw-w64-x86_64-toolchain pacman -S mingw-w64-i686-toolchain

  1. applying command: $ makepkg-mingw

After long compilation Getting the following error:

C:/msys64/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/10.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: error: export ordinal too large: 66306 collect2.exe: error: ld returned 1 exit status make[3]: [../../gcc-git/gcc/ada/gcc-interface/Make-lang.in:672: gnat1.exe] Error 1 make[3]: Waiting for unfinished jobs.... rm gfdl.pod gcc.pod gcov-dump.pod gcov-tool.pod fsf-funding.pod gpl.pod cpp.pod gcov.pod lto-dump.pod make[3]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/gcc' make[2]: [Makefile:4752: all-stage1-gcc] Error 2 make[2]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32' make[1]: [Makefile:23593: stage1-bubble] Error 2 make[1]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32' make: *** [Makefile:1009: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting...

lhmouse commented 4 years ago

Try removing languages (changing these to no) that you don't need from PKGBUIlD:

_enable_fortran=yes
_enable_ada=yes
_enable_objc=yes

See https://github.com/msys2/MINGW-packages/pull/6463#issuecomment-626271477 for details.

labba commented 4 years ago

i have done it and after started again a clean compilation getting the following:

In file included from ../../../gcc-git/libgcc/soft-fp/addtf3.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o getf2.o -MT getf2.o -MD -MP -MF getf2.dep -c ../../../gcc-git/libgcc/soft-fp/getf2.c /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o letf2.o -MT letf2.o -MD -MP -MF letf2.dep -c ../../../gcc-git/libgcc/soft-fp/letf2.c In file included from ../../../gcc-git/libgcc/soft-fp/divtf3.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o multf3.o -MT multf3.o -MD -MP -MF multf3.dep -c ../../../gcc-git/libgcc/soft-fp/multf3.c In file included from ../../../gcc-git/libgcc/soft-fp/eqtf2.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o negtf2.o -MT negtf2.o -MD -MP -MF negtf2.dep -c ../../../gcc-git/libgcc/soft-fp/negtf2.c In file included from ../../../gcc-git/libgcc/soft-fp/getf2.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o subtf3.o -MT subtf3.o -MD -MP -MF subtf3.dep -c ../../../gcc-git/libgcc/soft-fp/subtf3.c In file included from ../../../gcc-git/libgcc/soft-fp/letf2.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. /home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/xgcc -B/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/./gcc/ -L/mingw64/x86_64-w64-mingw32/lib -L/mingw64/lib -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/include -B/mingw64/x86_64-w64-mingw32/bin/ -B/mingw64/x86_64-w64-mingw32/lib/ -isystem /mingw64/x86_64-w64-mingw32/include -isystem /mingw64/x86_64-w64-mingw32/sys-include -fno-checking -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -O2 -I../../../gcc-git/libgcc/../winsup/w32api/include -g -march=x86-64 -mtune=generic -O2 -pipe -ggdb -Og -fdebug-prefix-map=/home/labba/MINGW-packages/mingw-w64-gcc-git/src=/usr/src/debug -DIN_GCC -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-error=format-diag -Wno-format -Wstrict-prototypes -Wmissing-prototypes -Wno-error=format-diag -Wold-style-definition -isystem ./include -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector -I. -I. -I../.././gcc -I../../../gcc-git/libgcc -I../../../gcc-git/libgcc/. -I../../../gcc-git/libgcc/../gcc -I../../../gcc-git/libgcc/../include -I../../../gcc-git/libgcc/config/libbid -DENABLE_DECIMAL_BID_FORMAT -DHAVE_CC_TLS -DUSE_EMUTLS -Wno-missing-prototypes -Wno-type-limits -o unordtf2.o -MT unordtf2.o -MD -MP -MF unordtf2.dep -c ../../../gcc-git/libgcc/soft-fp/unordtf2.c In file included from ../../../gcc-git/libgcc/soft-fp/multf3.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. In file included from ../../../gcc-git/libgcc/soft-fp/negtf2.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: addtf3.o] Error 1 make[3]: Waiting for unfinished jobs.... In file included from ../../../gcc-git/libgcc/soft-fp/subtf3.c:31: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. In file included from ../../../gcc-git/libgcc/soft-fp/unordtf2.c:30: ../../../gcc-git/libgcc/soft-fp/soft-fp.h:42:11: fatal error: ./sfp-machine.h: Invalid argument 42 | # include "sfp-machine.h" | ^~~~~~~ compilation terminated. make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: divtf3.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: eqtf2.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: getf2.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: letf2.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: multf3.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: negtf2.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: subtf3.o] Error 1 make[3]: [../../../gcc-git/libgcc/shared-object.mk:14: unordtf2.o] Error 1 make[3]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32/x86_64-w64-mingw32/libgcc' make[2]: [Makefile:17959: all-stage1-target-libgcc] Error 2 make[2]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32' make[1]: [Makefile:21867: stage1-bubble] Error 2 make[1]: Leaving directory '/home/labba/MINGW-packages/mingw-w64-gcc-git/src/build-x86_64-w64-mingw32' make: *** [Makefile:1009: all] Error 2 ==> ERROR: A failure occurred in build(). Aborting...

labba commented 4 years ago

issue solved. please see here for details: https://github.com/lhmouse/MINGW-packages/issues/5#event-3484654728