Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undefined symbols for architecture x86_64 #3215

Closed
evanlouden opened this issue Aug 28, 2023 · 1 comment
Closed

Undefined symbols for architecture x86_64 #3215

evanlouden opened this issue Aug 28, 2023 · 1 comment
Labels

Comments

@evanlouden
Copy link

I'm guessing this an issue with the configuration on my local machine but I'm having the hardest time figuring it out and any help would be greatly appreciated

Describe the bug
Bundler fails with the most recent update

Puma config:

N/A

To Reproduce
rails new puma-issue

Error

Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: /Users/evanlouden/.gem/ruby/3.1.4/gems/puma-5.6.7/ext/puma_http11
/Users/evanlouden/.rubies/ruby-3.1.4/bin/ruby -I /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0 extconf.rb
using OpenSSL pkgconfig (openssl.pc)
checking for openssl/bio.h... yes
checking for DTLS_method() in openssl/ssl.h... yes
checking for TLS_server_method() in openssl/ssl.h... yes
checking for SSL_CTX_set_min_proto_version(NULL, 0) in openssl/ssl.h... yes
checking for X509_STORE_up_ref()... yes
checking for SSL_CTX_set_ecdh_auto(NULL, 0) in openssl/ssl.h... yes
checking for SSL_CTX_set_dh_auto(NULL, 0) in openssl/ssl.h... yes
checking for SSL_get1_peer_certificate() in openssl/ssl.h... no
checking for Random.bytes... yes
creating Makefile

current directory: /Users/evanlouden/.gem/ruby/3.1.4/gems/puma-5.6.7/ext/puma_http11
make DESTDIR\= sitearchdir\=./.gem.20230828-23965-u05xmx sitelibdir\=./.gem.20230828-23965-u05xmx clean

current directory: /Users/evanlouden/.gem/ruby/3.1.4/gems/puma-5.6.7/ext/puma_http11
make DESTDIR\= sitearchdir\=./.gem.20230828-23965-u05xmx sitelibdir\=./.gem.20230828-23965-u05xmx
compiling http11_parser.c
compiling mini_ssl.c
compiling puma_http11.c
linking shared-object puma/puma_http11.bundle
Undefined symbols for architecture x86_64:
  "_SSL_get1_peer_certificate", referenced from:
      _engine_peercert in mini_ssl.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [puma_http11.bundle] Error 1

make failed, exit code 2

Gem files will remain installed in /Users/evanlouden/.gem/ruby/3.1.4/gems/puma-5.6.7 for inspection.
Results logged to /Users/evanlouden/.gem/ruby/3.1.4/extensions/x86_64-darwin-22/3.1.0-static/puma-5.6.7/gem_make.out

  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:102:in `run'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:51:in `block in make'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:43:in `each'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:43:in `make'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/ext_conf_builder.rb:42:in `build'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:171:in `build_extension'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:205:in `block in build_extensions'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:202:in `each'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/ext/builder.rb:202:in `build_extensions'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/rubygems/installer.rb:843:in `build_extensions'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/rubygems_gem_installer.rb:72:in `build_extensions'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/rubygems_gem_installer.rb:28:in `install'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/source/rubygems.rb:207:in `install'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/installer/gem_installer.rb:54:in `install'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/installer/gem_installer.rb:16:in `install_from_spec'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/installer/parallel_installer.rb:186:in `do_install'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/installer/parallel_installer.rb:177:in `block in worker_pool'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/worker.rb:62:in `apply_func'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/worker.rb:57:in `block in process_queue'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/worker.rb:54:in `loop'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/worker.rb:54:in `process_queue'
  /Users/evanlouden/.rubies/ruby-3.1.4/lib/ruby/3.1.0/bundler/worker.rb:91:in `block (2 levels) in create_threads'

An error occurred while installing puma (5.6.7), and Bundler cannot continue.

Expected behavior
I can generate a new rails app and bundle install successfully

Desktop (please complete the following information):
MacBook Pro
13-inch M1, 2020
Chip Apple M1
Memory 16 GB
macOs Ventura 13.5.1

Notes

I have successfully updated to 6.3.1 version of the Gem on some repos but I get the error above (for 6.3.1) on others.
On the the repo where I'm getting the error I can downgrade to version 6.2.0 and successfully bundle install.

In my researching I think maybe it's somehow related to #3174 but I have no idea why.

Thank you in advance for your help.

@evanlouden
Copy link
Author

So sorry. Nevermind. This comment #2790 (comment) fixed the issue for me. Maybe this issue title will help someone else find it though. 😅

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants