Hi All,

I cross-compiled qemu-ga from current master branch
(825b96dbcee23d134b691fc75618b59c5f53da32) and found strange behavior.

Configure CLI:
./configure --disable-docs --disable-system --disable-user
--cross-prefix=x86_64-w64-mingw32- --enable-guest-agent
--disable-guest-agent-msi --disable-qga-vss
Build CLI:
make -j8 qemu-ga

Linker wrote the following information but exited with 0 code:

/usr/lib/gcc/x86_64-w64-mingw32/14.2.0/../../../../x86_64-w64-mingw32/bin/ld:
qga/qemu-ga.exe:/4: section below image base
/usr/lib/gcc/x86_64-w64-mingw32/14.2.0/../../../../x86_64-w64-mingw32/bin/ld:
qga/qemu-ga.exe:/24: section below image base

As a result, this binary failed to start on Windows without any details,
just a message that the application is not compatible. I also tried to run
it with wine and got the error:

wine: failed to start
L"Z:\\home\\user\\Documents\\repos\\qemu\\build\\qga\\qemu-ga.exe"
Application could not be started, or no application associated with the
specified file.
ShellExecuteEx failed: Bad EXE format for
Z:\home\user\Documents\repos\qemu\build\qga\qemu-ga.exe.

I bisected the tree and found the commit that caused the problem:
https://gitlab.com/qemu-project/qemu/-/commit/563b1a35ed1f1151505d4fe5f723827d1b3fd4bc

Adding --disable-split-debug to the configure CLI fixes the issue.

$ x86_64-w64-mingw32-gcc --version
x86_64-w64-mingw32-gcc (GCC) 14.2.0

My question is, is this expected behavior or is this a bug?

Best Regards,
Konstantin Kostiuk.

Reply via email to