2013/7/19 Alexpux <[email protected]>

>
> 16.07.2013, в 0:44, Ruben Van Boxem <[email protected]> написал(а):
>
> 2013/7/15 Earnie Boyd <[email protected]>
>
>> 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
>
> We use  "--with-host-libstdcxx='-static -lstdc++'" when building GCC but
> as I see in configure script help:
>
>  --with-host-libstdcxx=L use linker arguments L to link with libstdc++
> when linking with PPL
>
> But GCC-4.8.x doesn't need PPL. It use CLOOG-ISL.
>
> Also I try to build mingw-w64-GCC-4.8.1 from Arch Linux GCC-4.8.1 and has
> this issue with dependency from libgcc*.dll too.
>

Then you'll need HOST_LDFLAGS or LDFLAGS. I'm not sure which one kicks in
when linking the compiler executables themselves.

The alternative is to compile a cross-compiler with the same libgcc variant
first and use that to compile the native one (what I did in my scripts).

Ruben


> Regards,
> Alexey.
>
>
>> 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
>> [email protected]
>> 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
> [email protected]
> 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
> [email protected]
> 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
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to