Прошу исправить. Лог сборки прилагается.
Да, я в курсе. Уже некоторое время пытаюсь победить. Сейчас проблема в том x86_64-pc-mingw32-ld из mingw64-binutils не хочет работать с объектниками, сгенерированными gcc8 и как следствие не собирается EFI-весрия xen Происходит вот такое: [builder@localhost x86]$ x86_64-pc-mingw32-ld -mi386pep --subsystem=10 -o efi/check.efi efi/check.o x86_64-pc-mingw32-ld: efi/check.o: unable to initialize decompress status for section .debug_info x86_64-pc-mingw32-ld: efi/check.o: unable to initialize decompress status for section .debug_info efi/check.o: file not recognized: file format not recognized
http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/x/xen-4.11.1-1.fc30.x86_64.html * Wed Mar 01 2017 Michael Young <m.a.young@durham.ac.uk> - 4.8.0-7 <...> - mingw64-binutils no longer needed for building efi for x86_64 on fc26+
(В ответ на комментарий №2) > http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/x/xen-4.11.1-1.fc30.x86_64.html > > > * Wed Mar 01 2017 Michael Young <m.a.young@durham.ac.uk> - 4.8.0-7 > <...> > - mingw64-binutils no longer needed for building efi for x86_64 on fc26+ Это интересно, в changelog это действительно описано, но никаких изменений в районе EFI в патчах нет и xen.spec содержит такие замечательные строки: # efi image needs an ld that has -mi386pep option %if %efiming BuildRequires: mingw64-binutils %endif
(В ответ на комментарий №3) > (В ответ на комментарий №2) > > http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/x/xen-4.11.1-1.fc30.x86_64.html > > > > > > * Wed Mar 01 2017 Michael Young <m.a.young@durham.ac.uk> - 4.8.0-7 > > <...> > > - mingw64-binutils no longer needed for building efi for x86_64 on fc26+ > > Это интересно, в changelog это действительно описано, но никаких изменений в > районе EFI в патчах нет и xen.spec содержит такие замечательные строки: > > # efi image needs an ld that has -mi386pep option > %if %efiming > BuildRequires: mingw64-binutils > %endif Да, но посмотриет повыше, там есть код: %if %build_efi && "%dist" < ".fc26" %ifarch x86_64 %define efiming 1 %else %define efiming 0 %endif %else %define efiming 0 %endif Что означает, что после fedora-26 собирается без mingw64-binutils. PS: не относящееся к этой баге, а в общем по сборке пакета: - можно ли не писать апстримные изменения в rpm-changaelog? Очень сильно захламляет changelog. Апстримный люди и так знают где смотреть. - прошу обновить и синхронизировать с патчами из fedora. Там огромное количество патчей закрывающих старые CVE на qemu, который xen носит с собой.
(В ответ на комментарий №4) > - можно ли не писать апстримные изменения в rpm-changaelog? Очень сильно > захламляет changelog. Апстримный люди и так знают где смотреть. да, я уже сделал такие выводы, спасибо.
(В ответ на комментарий №4) > (В ответ на комментарий №3) > > (В ответ на комментарий №2) > > > http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/x/xen-4.11.1-1.fc30.x86_64.html > > > > > > > > > * Wed Mar 01 2017 Michael Young <m.a.young@durham.ac.uk> - 4.8.0-7 > > > <...> > > > - mingw64-binutils no longer needed for building efi for x86_64 on fc26+ > > > > Это интересно, в changelog это действительно описано, но никаких изменений в > > районе EFI в патчах нет и xen.spec содержит такие замечательные строки: > > > > # efi image needs an ld that has -mi386pep option > > %if %efiming > > BuildRequires: mingw64-binutils > > %endif > > Да, но посмотриет повыше, там есть код: > > %if %build_efi && "%dist" < ".fc26" > %ifarch x86_64 > %define efiming 1 > %else > %define efiming 0 > %endif > %else > %define efiming 0 > %endif > > Что означает, что после fedora-26 собирается без mingw64-binutils. Я пробовал собирать так, он действительно собирается но без image efi
(В ответ на комментарий №6) > (В ответ на комментарий №4) > > (В ответ на комментарий №3) > > > (В ответ на комментарий №2) > > > > http://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/x/xen-4.11.1-1.fc30.x86_64.html > > > > > > > > > > > > * Wed Mar 01 2017 Michael Young <m.a.young@durham.ac.uk> - 4.8.0-7 > > > > <...> > > > > - mingw64-binutils no longer needed for building efi for x86_64 on fc26+ > > > > > > Это интересно, в changelog это действительно описано, но никаких изменений в > > > районе EFI в патчах нет и xen.spec содержит такие замечательные строки: > > > > > > # efi image needs an ld that has -mi386pep option > > > %if %efiming > > > BuildRequires: mingw64-binutils > > > %endif > > > > Да, но посмотриет повыше, там есть код: > > > > %if %build_efi && "%dist" < ".fc26" > > %ifarch x86_64 > > %define efiming 1 > > %else > > %define efiming 0 > > %endif > > %else > > %define efiming 0 > > %endif > > > > Что означает, что после fedora-26 собирается без mingw64-binutils. > > Я пробовал собирать так, он действительно собирается но без image efi Вот что мы имеем с текущим пакетом gcc8: [builder@localhost x86]$ gcc -m64 -DBUILD_ID -fno-strict-aliasing -std=gnu99 -Wall -Wstrict-prototypes -Wdeclaration-after-statement -Wno-unused-but-set-variable -Wno-unused-local-typedefs -O2 -fomit-frame-pointer -nostdinc -fno-builtin -fno-common -Werror -Wredundant-decls -Wno-pointer-arith -pipe -g -D__XEN__ -include /usr/src/RPM/BUILD/xen-4.10.2/xen/include/xen/config.h '-D__OBJECT_FILE__=""' -Wa,--strip-local-absolute -I/usr/src/RPM/BUILD/xen-4.10.2/xen/include -I/usr/src/RPM/BUILD/xen-4.10.2/xen/include/asm-x86/mach-generic -I/usr/src/RPM/BUILD/xen-4.10.2/xen/include/asm-x86/mach-default -DXEN_IMG_OFFSET=0x200000 '-D__OBJECT_LABEL__=arch$x86$' -msoft-float -fno-stack-protector -fno-exceptions -Wnested-externs -DHAVE_GAS_VMX -DHAVE_GAS_SSE4_2 -DHAVE_GAS_EPT -DHAVE_GAS_RDRAND -DHAVE_GAS_FSGSBASE -DHAVE_GAS_RDSEED -U__OBJECT_LABEL__ -DHAVE_GAS_QUOTED_SYM '-D__OBJECT_LABEL__=arch/x86/' -DHAVE_AS_INVPCID -mno-red-zone -mno-sse -fpic -fno-asynchronous-unwind-tables -DGCC_HAS_VISIBILITY_ATTRIBUTE -mindirect-branch=thunk-extern -mindirect-branch-register -DCONFIG_INDIRECT_THUNK -Wa,-I/usr/src/RPM/BUILD/xen-4.10.2/xen/include -c efi/check.c -o efi/check.o [builder@localhost x86]$ ld -mi386pep --subsystem=10 -o efi/check.efi efi/check.o /usr/bin/ld.default: unrecognised emulation mode: i386pep Supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu elf_l1om elf_k1om
По поводу дыр в qemu - вы зря на меня наехали. То что в федоре кому-то не хочется брать последний фиксы из upstream, я не виноват, хотят тянуть отдельными патчиками - ради бога. На текущий момент я вижу вариант только собрать его старым gcc7 с mingw. PS: может быть в федоре поддержка -mi386pe имеется в родном линкере ld?
с новым mingw64-binutils-2.32 все собралось. я могу отправить обновленный mingw64-binutils в Sisyphus
(В ответ на комментарий №9) > с новым mingw64-binutils-2.32 все собралось. я могу отправить обновленный > mingw64-binutils в Sisyphus Конечно, отправляйте! Ждём.
(In reply to comment #10) > (В ответ на комментарий №9) > > с новым mingw64-binutils-2.32 все собралось. я могу отправить обновленный > > mingw64-binutils в Sisyphus > > Конечно, отправляйте! Ждём. Дмитрий, спасибо! Что с xen?
Все почти готово, постараюсь сегодня-завтра отправить
Спасибо!
Закрываю.