[Bug 52338] New: Cygwin compilation fails: undefined reference to `_imp____acrt_iob_func' in winecrt0/debug.c
https://bugs.winehq.org/show_bug.cgi?id=52338 Bug ID: 52338 Summary: Cygwin compilation fails: undefined reference to `_imp____acrt_iob_func' in winecrt0/debug.c Product: Wine Version: 7.0-rc4 Hardware: x86-64 OS: Windows Status: UNCONFIRMED Severity: blocker Priority: P2 Component: build-env Assignee: wine-bugs(a)winehq.org Reporter: saulius2(a)gmail.com (This is continuation from the bug 52328) --- snip --- tools/winegcc/winegcc.exe -o dlls/dxgi/dxgi.dll --wine-objdir . -Wl,--disable-stdcall-fixup \ -fasynchronous-unwind-tables -shared dlls/dxgi/dxgi.spec -mcygwin dlls/dxgi/adapter.o \ dlls/dxgi/device.o dlls/dxgi/dxgi_main.o dlls/dxgi/factory.o dlls/dxgi/output.o \ dlls/dxgi/surface.o dlls/dxgi/swapchain.o dlls/dxgi/utils.o dlls/dxgi/version.res \ dlls/gdi32/libgdi32.a libs/dxguid/libdxguid.a libs/uuid/libuuid.a dlls/wined3d/libwined3d.a \ dlls/user32/libuser32.a dlls/win32u/libwin32u.a dlls/winecrt0/libwinecrt0.a \ dlls/kernel32/libkernel32.a dlls/ntdll/libntdll.a /usr/lib/gcc/i686-pc-cygwin/11/../../../../i686-pc-cygwin/bin/ld: dlls/winecrt0/libwinecrt0.a(debug.o): in function `fallback__wine_dbg_output': /home/saukrs/src/wine/dlls/winecrt0/debug.c:178: undefined reference to `_imp____acrt_iob_func' /usr/lib/gcc/i686-pc-cygwin/11/../../../../i686-pc-cygwin/bin/ld: dlls/winecrt0/libwinecrt0.a(debug.o): in function `fallback__wine_dbg_header': /home/saukrs/src/wine/dlls/winecrt0/debug.c:203: undefined reference to `_imp____acrt_iob_func' collect2: error: ld returned 1 exit status winegcc: /usr/bin/gcc.exe failed make: *** [Makefile:57380: dlls/dxgi/dxgi.dll] Error 2 --- snip --- -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52338 Saulius K. <saulius2(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P4 --- Comment #1 from Saulius K. <saulius2(a)gmail.com> --- If I add -lmsvcrt, the library gets built: --- snip --- $ tools/winegcc/winegcc.exe -o dlls/dxgi/dxgi.dll --wine-objdir . -Wl,--disable-stdcall-fixup \ -fasynchronous-unwind-tables -shared dlls/dxgi/dxgi.spec -mcygwin dlls/dxgi/adapter.o \ dlls/dxgi/device.o dlls/dxgi/dxgi_main.o dlls/dxgi/factory.o dlls/dxgi/output.o \ dlls/dxgi/surface.o dlls/dxgi/swapchain.o dlls/dxgi/utils.o dlls/dxgi/version.res \ dlls/gdi32/libgdi32.a libs/dxguid/libdxguid.a libs/uuid/libuuid.a dlls/wined3d/libwined3d.a \ dlls/user32/libuser32.a dlls/win32u/libwin32u.a dlls/winecrt0/libwinecrt0.a \ dlls/kernel32/libkernel32.a dlls/ntdll/libntdll.a -lmsvcrt --- snip --- --- snip --- $ ls -l dlls/dxgi/dxgi.dll -rwxr-xr-x 1 saukrs None 1020855 Jan 4 16:23 dlls/dxgi/dxgi.dll --- snip --- -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52338 Jacek Caban <jacek(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever confirmed|0 |1 CC| |jacek(a)codeweavers.com --- Comment #2 from Jacek Caban <jacek(a)codeweavers.com> --- It may seem weird, but I don't see a way to support -mcygwin on Cygwin :) winecrt0 is linked to both modules converted to PE files and not converted ones. On PE targets, it means that those debug functions get linked to all modules. They need to get stderr, which depends on crt used. In -mcygwin case we should use Cygwin libc, but it was earlier built with msvcrt definitions. We get away with it on mingw because mingw crt is compatible with msvcrt in this case. I don't see an easy way around it, you may disable problematic modules with configure options for now. The problem will not exist once we convert remaining modules to PE files. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52338 --- Comment #3 from Saulius K. <saulius2(a)gmail.com> --- Thanks for clear explanation and the tip. Do we have the bug/issue for converting remaining modules to PE files? It would be nice to add it as a blocker. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=52338 --- Comment #4 from Saulius K. <saulius2(a)gmail.com> --- Two other dlls that fails in similar manner: dlls/wined3d/wined3d.dll dlls/opengl32/opengl32.dll -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla