Bug #1834

1.9.2-dev fails to compile socket with IPv6 and MinGW 3.4.5

Added by luislavena (Luis Lavena) almost 3 years ago. Updated about 1 year ago.

[ruby-core:24601]
Status:Closed Start date:07/30/2009
Priority:Urgent Due date:
Assignee:usa (Usaku NAKAMURA) % Done:

100%

Category:ext
Target version:2.0.0
ruby -v:1.9.1-p129 and 1.8.6-p368

Description

Hello,

I'm running the One-Click Ruby Installer compile scripts on 32bits Windows 7. By default, it has IPv6 installed and enabled.

After configured Ruby with the following parameters:

--enable-shared --disable-install-doc

I've ended with the following warnings when compiling:

compiling socket

Fatal: --enable-ipv6 is specified, and your OS seems to support IPv6 feature.
But your getaddrinfo() and getnameinfo() are appeared to be broken.  Sorry,
you cannot compile IPv6 socket classes with broken these functions.
You can try --enable-wide-getaddrinfo.

==

Please find "mkmf.log" file attached with the extconf options generated during this compilation.

After follow the suggestion of adding --enable-wide-getaddrinfo, I got a different error message, which I have attached in the file "with-wide-setting.log". Also attached mkmf.log of this run.

The revision used was:

<pre>
URL: http://svn.ruby-lang.org/repos/ruby/trunk
Repository Root: http://svn.ruby-lang.org/repos/ruby
Repository UUID: b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Revision: 24312
Node Kind: directory
Schedule: normal
Last Changed Author: naruse
Last Changed Rev: 24311
Last Changed Date: 2009-07-28 20:11:29 -0300 (mar, 28 jul 2009)
</pre>

Thank you.

with-wide-setting.log (6.8 kB) luislavena (Luis Lavena), 07/30/2009 10:29 am

mkmf-enable-wide-getaddrinfo.log (35.9 kB) luislavena (Luis Lavena), 07/30/2009 10:29 am

mkmf.log (13.9 kB) luislavena (Luis Lavena), 07/30/2009 10:29 am

Associated revisions

Revision 24517
Added by usa (Usaku NAKAMURA) almost 3 years ago

* ext/socket/extconf.rb: if ipv6 is enabled, the version of Windows most be XP or later. [ruby-core:24601]

History

Updated by usa (Usaku NAKAMURA) almost 3 years ago

Hello,

Sorry, I don't have much time now to resolve this problem.

Roughly summarize of my understanding.

(1) MinGW's IPv6 support seems to be broken.
    VC++6 has same problem, I know.
    So, mswin's ipv6 support is now disabled by default.

(2) --disable-ipv6 option of configure is your workaround.

(3) link errors with --enable-wide-getaddrinfo is ruby's bug.


In message "[ruby-core:24601] [Bug #1834] 1.9.2-dev fails to compile socket with IPv6 and MinGW 3.4.5"
    on Jul.30,2009 10:29:35, <redmine@ruby-lang.org> wrote:
> Bug #1834: 1.9.2-dev fails to compile socket with IPv6 and MinGW 3.4.5
> http://redmine.ruby-lang.org/issues/show/1834
> 
> Author: Luis Lavena
> Status: Open, Priority: Normal
> Category: ext, Target version: 1.9.x
> ruby -v: 1.9.1-p129 and 1.8.6-p368
> 
> Hello,
> 
> I'm running the One-Click Ruby Installer compile scripts on 32bits Windows 7. By default, it has IPv6 installed and enabled.
> 
> After configured Ruby with the following parameters:
> 
> --enable-shared --disable-install-doc
> 
> I've ended with the following warnings when compiling:
> 
> compiling socket
> 
> Fatal: --enable-ipv6 is specified, and your OS seems to support IPv6 feature.
> But your getaddrinfo() and getnameinfo() are appeared to be broken.  Sorry,
> you cannot compile IPv6 socket classes with broken these functions.
> You can try --enable-wide-getaddrinfo.
> 
> ==
> 
> Please find "mkmf.log" file attached with the extconf options generated during this compilation.
> 
> After follow the suggestion of adding --enable-wide-getaddrinfo, I got a different error message, which I have attached in the file "with-wide-setting.log". Also attached mkmf.log of this run.
> 
> The revision used was:
> 
> <pre>
> URL: http://svn.ruby-lang.org/repos/ruby/trunk
> Repository Root: http://svn.ruby-lang.org/repos/ruby
> Repository UUID: b2dd03c8-39d4-4d8f-98ff-823fe69b080e
> Revision: 24312
> Node Kind: directory
> Schedule: normal
> Last Changed Author: naruse
> Last Changed Rev: 24311
> Last Changed Date: 2009-07-28 20:11:29 -0300 (mar, 28 jul 2009)
> </pre>
> 
> Thank you.
> 
> 
> ----------------------------------------
> http://redmine.ruby-lang.org


Regards,
-- 
U.Nakamura <usa@garbagecollect.jp>

Updated by luislavena (Luis Lavena) almost 3 years ago

On Wed, Jul 29, 2009 at 11:23 PM, U.Nakamura<usa@garbagecollect.jp> wrote:
> Hello,
>
> Sorry, I don't have much time now to resolve this problem.

Thank you Mr. Nakamura, no need to sorry for this. Wanted to verify wasn't me.

> Roughly summarize of my understanding.
>
> (1) MinGW's IPv6 support seems to be broken.
>    VC++6 has same problem, I know.

I'm going to look into MinGW headers then.

>    So, mswin's ipv6 support is now disabled by default.
>
> (2) --disable-ipv6 option of configure is your workaround.

Wasn't aware of that, will try it, but first try to get IPv6 with MinGW to work.

>
> (3) link errors with --enable-wide-getaddrinfo is ruby's bug.

Good to know.

Thank you again.

-- 
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Assignee set to usa (Usaku NAKAMURA)

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Status changed from Open to Assigned

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Priority changed from Normal to Urgent

Updated by usa (Usaku NAKAMURA) almost 3 years ago

  • Status changed from Assigned to Closed
  • % Done changed from 0 to 100
Applied in changeset r24517.

Also available in: Atom PDF