ruby-core@ruby-lang.org archive (unofficial mirror)
 help / color / mirror / Atom feed
* [ruby-core:91824] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
@ 2019-03-14  3:03 ` franklinyu
  2019-03-20 23:21 ` [ruby-core:91904] " hsbt
                   ` (14 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-03-14  3:03 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been reported by franklinyu (Franklin Yu).

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665

* Author: franklinyu (Franklin Yu)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:91904] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
  2019-03-14  3:03 ` [ruby-core:91824] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave franklinyu
@ 2019-03-20 23:21 ` hsbt
  2019-05-18 22:29 ` [ruby-core:92716] " franklinyu
                   ` (13 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: hsbt @ 2019-03-20 23:21 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by hsbt (Hiroshi SHIBATA).

Status changed from Open to Rejected

I couldn't reproduce this with Mojave.

```
~ > ls /usr/include/netinet6/in6.h
/usr/include/netinet6/in6.h
```

It seems your development environment issue.

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-77229

* Author: franklinyu (Franklin Yu)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92716] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
  2019-03-14  3:03 ` [ruby-core:91824] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave franklinyu
  2019-03-20 23:21 ` [ruby-core:91904] " hsbt
@ 2019-05-18 22:29 ` franklinyu
  2019-05-18 22:31 ` [ruby-core:92717] " hsbt
                   ` (12 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-05-18 22:29 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).

Status changed from Rejected to Open

@hsbt That location has been [deprecated](https://developer.apple.com/documentation/xcode_release_notes/xcode_10_release_notes#3035624):

> The command line tools will search the SDK for system headers by default. However, some software may fail to build correctly against the SDK and require macOS headers to be installed in the base system under /usr/include. If you are the maintainer of such software, we encourage you to update your project to work with the SDK or file a bug report for issues that are preventing you from doing so. As a workaround, an extra package is provided which will install the headers to the base system. **In a future release, this package will no longer be provided.**

Please be future-proof.

hsbt (Hiroshi SHIBATA) wrote:
> I couldn't reproduce this with Mojave.
> 
> ```
> ~ > ls /usr/include/netinet6/in6.h
> /usr/include/netinet6/in6.h
> ```
> 
> It seems your development environment issue.



----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78073

* Author: franklinyu (Franklin Yu)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92717] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (2 preceding siblings ...)
  2019-05-18 22:29 ` [ruby-core:92716] " franklinyu
@ 2019-05-18 22:31 ` hsbt
  2019-05-19  7:38 ` [ruby-core:92720] " nobu
                   ` (11 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: hsbt @ 2019-05-18 22:31 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by hsbt (Hiroshi SHIBATA).

Status changed from Open to Rejected

Do not change status field.

Maybe you can resolve this with `sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /`

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78074

* Author: franklinyu (Franklin Yu)
* Status: Rejected
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92720] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (3 preceding siblings ...)
  2019-05-18 22:31 ` [ruby-core:92717] " hsbt
@ 2019-05-19  7:38 ` nobu
  2019-05-21 16:16 ` [ruby-core:92745] " franklinyu
                   ` (10 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: nobu @ 2019-05-19  7:38 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by nobu (Nobuyoshi Nakada).

Status changed from Rejected to Feedback

That check is necessary only for very old, 6 years ago, header.
It is strange that `IN6_IS_ADDR_UNSPECIFIED` code cannot compile.
Could you show how it failed in mkmf.log?

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78077

* Author: franklinyu (Franklin Yu)
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92745] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (4 preceding siblings ...)
  2019-05-19  7:38 ` [ruby-core:92720] " nobu
@ 2019-05-21 16:16 ` franklinyu
  2019-05-23  5:11 ` [ruby-core:92791] " franklinyu
                   ` (9 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-05-21 16:16 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


hsbt (Hiroshi SHIBATA) wrote:
> Do not change status field.
> 
> Maybe you can resolve this with `sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /`

That is a *workaround*. It will break in the future. Please read the bold text in the quote. If by your definition my environment is broken, then maybe next year *all* macOS user will have broken environment.

nobu (Nobuyoshi Nakada) wrote:
> That check is necessary only for very old, 6 years ago, header.
> It is strange that `IN6_IS_ADDR_UNSPECIFIED` code cannot compile.
> Could you show how it failed in mkmf.log?

I’m busy now but I will provide the log in 48 hours. Thanks for this information.

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78107

* Author: franklinyu (Franklin Yu)
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.



-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92791] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (5 preceding siblings ...)
  2019-05-21 16:16 ` [ruby-core:92745] " franklinyu
@ 2019-05-23  5:11 ` franklinyu
  2019-05-23  6:08 ` [ruby-core:92793] " nobu
                   ` (8 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-05-23  5:11 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).

File mkmf.log added

nobu (Nobuyoshi Nakada) wrote:
> That check is necessary only for very old, 6 years ago, header.
> It is strange that `IN6_IS_ADDR_UNSPECIFIED` code cannot compile.
> Could you show how it failed in mkmf.log?

Please find attached. I was trying to install 2.6.3 version.

----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78163

* Author: franklinyu (Franklin Yu)
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92793] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (6 preceding siblings ...)
  2019-05-23  5:11 ` [ruby-core:92791] " franklinyu
@ 2019-05-23  6:08 ` nobu
  2019-05-31  4:50 ` [ruby-core:92902] [Ruby trunk Feature#15665] " franklinyu
                   ` (7 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: nobu @ 2019-05-23  6:08 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by nobu (Nobuyoshi Nakada).


From where `-Werror` and `-Wunused-parameter` came?

```
"clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../.  -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542  -Werror -c conftest.c"
In file included from conftest.c:1:
In file included from ../.././include/ruby.h:33:
../.././include/ruby/ruby.h:2186:35: error: unused parameter 'allow_transient' [-Werror,-Wunused-parameter]
rb_array_ptr_use_end(VALUE a, int allow_transient)
```


----------------------------------------
Bug #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78166

* Author: franklinyu (Franklin Yu)
* Status: Feedback
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 2.6.0
* Backport: 2.4: UNKNOWN, 2.5: UNKNOWN, 2.6: UNKNOWN
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:92902] [Ruby trunk Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (7 preceding siblings ...)
  2019-05-23  6:08 ` [ruby-core:92793] " nobu
@ 2019-05-31  4:50 ` franklinyu
  2019-06-06 18:28 ` [ruby-core:93013] " franklinyu
                   ` (6 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-05-31  4:50 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


nobu (Nobuyoshi Nakada) wrote:
> Applied in changeset commit:git|fe3ff5afb07e171fd950623c69abfbabbb2762a3.
> 
> ----------
> Suppress paranoid warnings for external/3rd-party libraries
> 
> [Feature #15665]

I have verified that the changeset works for 2.6 on my machine. It is currently in trunk, which would go to 2.7 eventually; would it be backported to 2.6 branch?

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78275

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:93013] [Ruby trunk Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (8 preceding siblings ...)
  2019-05-31  4:50 ` [ruby-core:92902] [Ruby trunk Feature#15665] " franklinyu
@ 2019-06-06 18:28 ` franklinyu
  2019-06-07  3:04 ` [ruby-core:93014] " hsbt
                   ` (5 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-06-06 18:28 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


Hello? Any update? Would it be included in 2.6.4?

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78389

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:93014] [Ruby trunk Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (9 preceding siblings ...)
  2019-06-06 18:28 ` [ruby-core:93013] " franklinyu
@ 2019-06-07  3:04 ` hsbt
  2019-06-08  0:42 ` [ruby-core:93017] " franklinyu
                   ` (4 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: hsbt @ 2019-06-07  3:04 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by hsbt (Hiroshi SHIBATA).


I'm not sure nobu's changesets are bug or feature.

But this issue was marked with "Feature" by nobu. We never backport the new feature to stable versions.



----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78390

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:93017] [Ruby trunk Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (10 preceding siblings ...)
  2019-06-07  3:04 ` [ruby-core:93014] " hsbt
@ 2019-06-08  0:42 ` franklinyu
  2019-06-18 12:20 ` [ruby-core:93222] " franklinyu
                   ` (3 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-06-08  0:42 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


@nobu This should be a bug, not feature. Please mark it as a bug and backport it into 2.6 branch.

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78394

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:93222] [Ruby trunk Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (11 preceding siblings ...)
  2019-06-08  0:42 ` [ruby-core:93017] " franklinyu
@ 2019-06-18 12:20 ` franklinyu
  2019-11-11 14:03 ` [ruby-core:95788] [Ruby master " nobu
                   ` (2 subsequent siblings)
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-06-18 12:20 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


@nobu Please update, or is there any reason that this should be a feature instead of a bug?

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-78674

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:95788] [Ruby master Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (12 preceding siblings ...)
  2019-06-18 12:20 ` [ruby-core:93222] " franklinyu
@ 2019-11-11 14:03 ` nobu
  2019-11-11 15:22 ` [ruby-core:95792] " naruse
  2019-11-15  6:22 ` [ruby-core:95857] " franklinyu
  15 siblings, 0 replies; 16+ messages in thread
From: nobu @ 2019-11-11 14:03 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by nobu (Nobuyoshi Nakada).


I did set the tracker to "feature", since this added the support for "-Wpedantic" option, but will leave this to the branch maintainers.

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-82609

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:95792] [Ruby master Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (13 preceding siblings ...)
  2019-11-11 14:03 ` [ruby-core:95788] [Ruby master " nobu
@ 2019-11-11 15:22 ` naruse
  2019-11-15  6:22 ` [ruby-core:95857] " franklinyu
  15 siblings, 0 replies; 16+ messages in thread
From: naruse @ 2019-11-11 15:22 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by naruse (Yui NARUSE).


Usually -pedantic is applied automatically ruby core but not passed to extension libraries.
Such "suppress warnings" are usually not considered as a bug because it may cause side effect.


----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-82613

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [ruby-core:95857] [Ruby master Feature#15665] Cannot compile socket extension on Mojave
       [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
                   ` (14 preceding siblings ...)
  2019-11-11 15:22 ` [ruby-core:95792] " naruse
@ 2019-11-15  6:22 ` franklinyu
  15 siblings, 0 replies; 16+ messages in thread
From: franklinyu @ 2019-11-15  6:22 UTC (permalink / raw)
  To: ruby-core

Issue #15665 has been updated by franklinyu (Franklin Yu).


naruse (Yui NARUSE) wrote:
> Usually -pedantic is applied automatically ruby core but not passed to extension libraries.
> Such "suppress warnings" are usually not considered as a bug because it may cause side effect.

I knew that Ruby was compiled with `-pedantic`; wasn’t aware that this was for core only. Thanks a lot for the explanation. Look forward to the release in Christmas.

----------------------------------------
Feature #15665: Cannot compile socket extension on Mojave
https://bugs.ruby-lang.org/issues/15665#change-82690

* Author: franklinyu (Franklin Yu)
* Status: Closed
* Priority: Normal
* Assignee: 
* Target version: 
----------------------------------------
The `mkmf.log` is reporting that it cannot find `netinet6/in6.h`. I guess that previously it’s finding it in `/usr/include`, but as we all know Apple removed that path since Mojave. On my machine the current path is:

```
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.14.sdk/usr/include/
```

The C compiler seems fine if I’m using it stand-alone. I tried compiling following snippet:

```c
#include <netinet/in.h>
int main() {}
int t(struct in6_addr *addr) {
    return IN6_IS_ADDR_UNSPECIFIED(addr);
}
```

And it works, although I have no idea which header it included. I tried both compiling it with `cc test.c`, and with the actual command in `mkmf.log`:

```
clang -I../../.ext/include/x86_64-darwin18 -I../.././include -I../.././ext/socket -I../.. -I../../. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -Wall -Wextra -Wpedantic -Wshadow -pipe -D__APPLE_USE_RFC_3542 -Werror
```

Both works without any warning/error.

## note

This only happens to 2.6.0 and 2.6.1. Releases in 2.5.x or below are not affected.

---Files--------------------------------
mkmf.log (143 KB)


-- 
https://bugs.ruby-lang.org/

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2019-11-15  6:23 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <redmine.issue-15665.20190314030358@ruby-lang.org>
2019-03-14  3:03 ` [ruby-core:91824] [Ruby trunk Bug#15665] Cannot compile socket extension on Mojave franklinyu
2019-03-20 23:21 ` [ruby-core:91904] " hsbt
2019-05-18 22:29 ` [ruby-core:92716] " franklinyu
2019-05-18 22:31 ` [ruby-core:92717] " hsbt
2019-05-19  7:38 ` [ruby-core:92720] " nobu
2019-05-21 16:16 ` [ruby-core:92745] " franklinyu
2019-05-23  5:11 ` [ruby-core:92791] " franklinyu
2019-05-23  6:08 ` [ruby-core:92793] " nobu
2019-05-31  4:50 ` [ruby-core:92902] [Ruby trunk Feature#15665] " franklinyu
2019-06-06 18:28 ` [ruby-core:93013] " franklinyu
2019-06-07  3:04 ` [ruby-core:93014] " hsbt
2019-06-08  0:42 ` [ruby-core:93017] " franklinyu
2019-06-18 12:20 ` [ruby-core:93222] " franklinyu
2019-11-11 14:03 ` [ruby-core:95788] [Ruby master " nobu
2019-11-11 15:22 ` [ruby-core:95792] " naruse
2019-11-15  6:22 ` [ruby-core:95857] " franklinyu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).