2013/7/15 Earnie Boyd <ear...@users.sourceforge.net>
> On Mon, Jul 15, 2013 at 2:09 PM, Alexey Pavlov wrote:
> > 2013/7/15 Jon :
> >> On Mon, 15 Jul 2013 11:02:20 +0400
> >> niXman wrote:
> >>
> >>> 2013/7/15 Jon:
> >>> > When I build C apps with mingwbuilds 4.8.1-win32-sjlj, the built
> artifacts have a runtime dependency on
> >>> > `libgcc_s_sjlj-1.dll`. This is not the case when I use the rubenvb
> toolchains.
> >>>
> >>> Just now I checked with [1] and [2] and found no dependency on
> >>> `libgcc_s_sjlj-1.dll`
> >>> What am I doing wrong?
> >>>
> >>>
> >>> [1]
> http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/sjlj/x64-4.8.1-release-win32-sjlj-rev2.7z
> >>> [2]
> http://sourceforge.net/projects/mingwbuilds/files/host-windows/releases/4.8.1/64-bit/threads-win32/sjlj/x64-4.8.1-release-win32-sjlj-rev1.7z
> >>
> >> Sorry, I wasn't clear. It seems that only the built DLLs (not exes)
> have a dependency on `libgcc_s_sjlj-1.dll` when I build with [1] but not
> [2]. For example, the DLLs built for both Lua and UnQLite (and Ruby using
> different build helper) using these build recipes:
> >>
> >> Lua:
> https://github.com/jonforums/buildlets/blob/master/build_lua.ps1#L60-L72
> >> UnQLite:
> https://github.com/jonforums/buildlets/blob/master/build_unqlite.ps1#L60-L72
> >>
> >> When I use PEStudio [3] v7.19 for static analysis, I see the DLLs are
> trying to import the following symbols from `libgcc_s_sjlj-1.dll`:
> >>
> >> ** unqlite.dll **
> >> __divdi3
> >> __moddi3
> >> __udivdi3
> >> __umoddi3
> >>
> >> ** lua52.dll **
> >> __udivdi3
> >> __umoddi3
> >>
> >> I'm still investigating to try to discover if I've misconfigured my
> automated build helpers.
> >>
> >
> > This issue is related to all gcc-4.8.x toolchains. All pre gcc-4.8
> > toolchains work ok.
> > I have this issue too but in other form.
> > My issue is related to use gcc-4.8.x toolchain for building other
> > toolchain with the same symptoms.
> > For example, I need to build GCC-4.8.1 toolchain with dwarf
> > exceptions. I have GCC-4.8.1 toolchain with sjlj exceptions. After
> > building new toolchain I have liblto_plugin-0.dll depended on old GCC
> > libgcc_s_sjlj-1.dll. On dependency walker I see it want __udivdi3 and
> > __umoddi3 functions from this dll.
> > I have this issue only when building any toolchain with gcc-4.8.x. If
> > I use earlier gcc versions (<=4.7.3) then new liblto_plugin-0.dll
> > doesn't depend on any toolchain dll - only system wide libraries.
>
Why not just add -static to the link flags for the GCC executables? You can
do this through LDFLAGS (I think) or abuse --with-host-libstdc++ for it.
This makes any GCC compiler executable independent of dll's of the
toolchain used to build it.
Ruben
> I'm thinking you need to do a cross build to avoid it.
>
> --host=i686-w64-mingw32-dwarf2 --target=i686-w64-mingw32-dwarf2
> --build=i686-w64-mingw32-sjlj
>
> You might also need to do a make all-host && make install-host before
> it works well, then add your prefix/bin to the front of PATH and
> continue the make.
>
> It's a mess. I've been building 2.8.1 in several scenario's recently;
> not a fun event.
>
> --
> Earnie
> -- https://sites.google.com/site/earnieboyd
>
>
> ------------------------------------------------------------------------------
> See everything from the browser to the database with AppDynamics
> Get end-to-end visibility with application monitoring from AppDynamics
> Isolate bottlenecks and diagnose root cause in seconds.
> Start your free trial of AppDynamics Pro today!
> http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
> _______________________________________________
> Mingw-w64-public mailing list
> Mingw-w64-public@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/mingw-w64-public
>
------------------------------------------------------------------------------
See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
Isolate bottlenecks and diagnose root cause in seconds.
Start your free trial of AppDynamics Pro today!
http://pubads.g.doubleclick.net/gampad/clk?id=48808831&iu=/4140/ostg.clktrk
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public