Whenever I compile a program using i686-mingw32-g++ (emerged by sys-devel/crossdev-0.9.18-r10) and link it, if I attempt to run it in wine, I get an error stating that it could not find libgcc_s_sjlj-1.dll. I attempted to locate this file, but it is nowhere to be found. If the program is compiled with the -static-libgcc flag, it works. Here is some output: michael@hastur gcctest % i686-mingw32-g++ test.cpp -o test.exe michael@hastur gcctest % wine test.exe err:module:import_dll Library libgcc_s_sjlj-1.dll (which is needed by L"Z:\\home\\michael\\development\\gcctest\\test.exe") not found err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\michael\\development\\gcctest\\test.exe" failed, status c0000135 michael@hastur gcctest % i686-mingw32-g++ -static-libgcc test.cpp -o test.exe michael@hastur gcctest % wine test.exe test michael@hastur gcctest % ----------------------------------- I cannot redistribute my programs if I do not have libgcc_s_sjlj-1.dll. Reproducible: Always Steps to Reproduce: 1. Compile any c++ program using i686-mingw32-g++ without -static-libgcc 2. Run program using wine Actual Results: Error is produced. Expected Results: Either required DLL is easy to be found, or is located in proper directory so the error is not generated.
works fine for me $ qlist -e cross-mingw32/gcc | grep dll /usr/x86_64-pc-linux-gnu/mingw32/gcc-bin/4.4.4/libgcc_s_sjlj-1.dll