Project

General

Profile

Actions

Bug #11902

closed

have_func('rb_thread_fd_select') returns false

Added by dwfait (Dwain Faithfull) almost 9 years ago. Updated almost 9 years ago.

Status:
Third Party's Issue
Assignee:
-
Target version:
-
ruby -v:
ruby 2.4.0dev (2015-12-26 trunk 53319) [x86_64-darwin14]
[ruby-core:72537]

Description

Hello all. I don't know if this is a bug or an error on my part of setting something up.

I was unable to install the eventmachine gem against a version of ruby I compiled from trunk due to have_func('rb_thread_fd_select') reporting false when it should report true.

mkmf.rb seems to be generating commands to point to the right include directories:

clang -o conftest -I/usr/local/include/ruby-2.4.0/x86_64-darwin14 -I/usr/local/include/ruby-2.4.0/ruby/backward -I/usr/local/include/ruby-2.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O0 -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens -pipe conftest.c -L. -L/usr/local/lib -L. -fstack-protector -L/usr/local/lib -lruby-static -framework CoreFoundation -lpthread -lgmp -ldl -lobjc

Other have_func calls seems to work as expected. If I 'hack' eventmachine to assume it returns true, everything works as expected.

Could someone more experienced than I help me debug what's going on here? have_func('rb_thread_fd_select') should only correctly return false for ruby version < 1.9, of which I have none installed on my system, so something is failing here.

Updated by normalperson (Eric Wong) almost 9 years ago

wrote:

Bug #11902: have_func('rb_thread_fd_select') returns false
https://bugs.ruby-lang.org/issues/11902

I cannot reproduce this on my GNU/Linux machines with 2.4.0dev
Can you show us your gem_make.out and mkmf.log files?

Updated by dwfait (Dwain Faithfull) almost 9 years ago

Eric Wong wrote:

wrote:

Bug #11902: have_func('rb_thread_fd_select') returns false
https://bugs.ruby-lang.org/issues/11902

I cannot reproduce this on my GNU/Linux machines with 2.4.0dev
Can you show us your gem_make.out and mkmf.log files?

Sure. I'm on OS X 10.10. As an aside, others I've talked to can't replicate it either, but I can't fathom what I could have done to cause this behaviour. With the exception of openssl paths, it's a standard install.

mkmf.log: https://gist.github.com/dwfait/9515d4893ac59962d204

gem_make.out: https://gist.github.com/dwfait/f943ba48e79b065d363c

Updated by dwfait (Dwain Faithfull) almost 9 years ago

I should add installing ruby 2.3 through ruby-install works fine.

Updated by nobu (Nobuyoshi Nakada) almost 9 years ago

  • Status changed from Open to Third Party's Issue

https://gist.github.com/dwfait/9515d4893ac59962d204#file-mkmf-log-L178-L183

"clang -o conftest -I/usr/local/include/ruby-2.4.0/x86_64-darwin14 -I/usr/local/include/ruby-2.4.0/ruby/backward -I/usr/local/include/ruby-2.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -O0 -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens  -pipe conftest.c  -L. -L/usr/local/lib -L. -fstack-protector -L/usr/local/lib     -lssl -lcrypto -lruby-static -framework CoreFoundation  -lssl -lcrypto -lpthread -lgmp -ldl -lobjc "
ld: couldn't dlopen() /usr/lib/libdtrace.dylib: dlopen(/usr/lib/libdtrace.dylib, 1): Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

This error lets the checks fail, I have no idea why it is linked.

Updated by dwfait (Dwain Faithfull) almost 9 years ago

Nobuyoshi Nakada wrote:

https://gist.github.com/dwfait/9515d4893ac59962d204#file-mkmf-log-L178-L183

"clang -o conftest -I/usr/local/include/ruby-2.4.0/x86_64-darwin14 -I/usr/local/include/ruby-2.4.0/ruby/backward -I/usr/local/include/ruby-2.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -O0 -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens  -pipe conftest.c  -L. -L/usr/local/lib -L. -fstack-protector -L/usr/local/lib     -lssl -lcrypto -lruby-static -framework CoreFoundation  -lssl -lcrypto -lpthread -lgmp -ldl -lobjc "
ld: couldn't dlopen() /usr/lib/libdtrace.dylib: dlopen(/usr/lib/libdtrace.dylib, 1): Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

This error lets the checks fail, I have no idea why it is linked.

Any hints/pointers as to figuring out why it's being linked and how to fix this?

Updated by kosaki (Motohiro KOSAKI) almost 9 years ago

On Tue, Dec 29, 2015 at 8:09 AM, wrote:

Issue #11902 has been updated by Dwain Faithfull.

Nobuyoshi Nakada wrote:

https://gist.github.com/dwfait/9515d4893ac59962d204#file-mkmf-log-L178-L183

"clang -o conftest -I/usr/local/include/ruby-2.4.0/x86_64-darwin14 -I/usr/local/include/ruby-2.4.0/ruby/backward -I/usr/local/include/ruby-2.4.0 -I. -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -O0 -fno-fast-math -g -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Wpointer-arith -Wwrite-strings -Wdeclaration-after-statement -Wshorten-64-to-32 -Wimplicit-function-declaration -Wdivision-by-zero -Wdeprecated-declarations -Wextra-tokens  -pipe conftest.c  -L. -L/usr/local/lib -L. -fstack-protector -L/usr/local/lib     -lssl -lcrypto -lruby-static -framework CoreFoundation  -lssl -lcrypto -lpthread -lgmp -ldl -lobjc "
ld: couldn't dlopen() /usr/lib/libdtrace.dylib: dlopen(/usr/lib/libdtrace.dylib, 1): Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

This error lets the checks fail, I have no idea why it is linked.

Any hints/pointers as to figuring out why it's being linked and how to fix this?

This is wrong place for asking it.

Unsubscribe:
http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0