Project

General

Profile

Actions

Bug #18820

closed

on aarch64/Android/Termux/Ubuntu jammy server, ALL versions before Ruby 3.1.x don't compile!

Added by libweirdness (Antryg Revok) over 2 years ago. Updated over 2 years ago.

Status:
Closed
Assignee:
-
Target version:
-
ruby -v:
ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [aarch64-linux-gnu]
[ruby-core:<unknown>]

Description

btw, this is a frustrating bug-reporting system to report a bug in?
so if I've reported it in the wrong place,
just delete my report.

My learning-programming environment is within a tablet,
so
aarch64 / Android 11 ( originally 10 or 9, iirc )
then Termux in that,
then Ubuntu Server jammy aka 22.04 LTS
then I get that set up, create a reg user to live in,
then I tried using "rbenv"
to get the same Ruby as my textbook
"Well Grounded Rubyist, 3rd edition",
which is a 2.5.x variant

( I wasted months trying
to learn Haskell with old books,
and the language simply doesn't work the same,
in newer tools,
ie do what the textbook told you to do,
and get nowhere.

I'm not interested in such
grinding demotivation within learning Ruby, too,
see? )

So, after trying the apt install rbenv
and then
rbenv install 2.5.8, then 2.5.7, then 2.5.6...

I wrongly believed that the problem was in rbenv.

So, I ripped that apt installed version out
& failed to install Homebrew,
which doesn't even try to work,
for people who are in ARM based machines.

then tried installing the git version of rbenv.

Then I tried a script that did

rbenv install $i
on these versions:
2.5.9
2.6.10 2.7.6 3.0.4 3.1.2

ALL of them, except for the last, failed.

viewing the 2.5.9 stderr in vim, copy-paste gives you:

Downloading ruby-2.5.9.tar.bz2...
  2 -> https://cache.ruby-lang.org/pub/ruby/2.5/ruby-2.5.9.tar.bz2
  3 Installing ruby-2.5.9...
  4
  5 WARNING: ruby-2.5.9 is past its end of life and is now unsupported.
  6 It no longer receives bug fixes or critical security updates.
  7
  8
  9 BUILD FAILED (Ubuntu 22.04 using ruby-build 20220426-3-g1038c07)
 10
 11 Inspect or clean up the working tree at /tmp/ruby-build.20220607213721.9846.fZCTZz
 12 Results logged to /tmp/ruby-build.20220607213721.9846.log
 13
 14 Last 10 log lines:
 15 cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silenc    e earlier diagnostics                                                                           16 cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been inten    ded to silence earlier diagnostics                                                              17 cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended     to silence earlier diagnostics                                                                  18 cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silenc    e earlier diagnostics                                                                           19 cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been inten    ded to silence earlier diagnostics                                                              20 cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended     to silence earlier diagnostics                                                                  21 linking shared-object socket.so
 22 make[2]: Leaving directory '/tmp/ruby-build.20220607213721.9846.fZCTZz/ruby-2.5.9/ext/socket'
 23 make[1]: Leaving directory '/tmp/ruby-build.20220607213721.9846.fZCTZz/ruby-2.5.9'
 24 make: *** [uncommon.mk:240: build-ext] Error 2

2.6.10 gives:

Downloading ruby-2.6.10.tar.bz2...                                                               2 -> https://cache.ruby-lang.org/pub/ruby/2.6/ruby-2.6.10.tar.bz2                                  3 Installing ruby-2.6.10...
  4
  5 BUILD FAILED (Ubuntu 22.04 using ruby-build 20220426-3-g1038c07)
  6
  7 Inspect or clean up the working tree at /tmp/ruby-build.20220607215706.16321.hja12y
  8 Results logged to /tmp/ruby-build.20220607215706.16321.log
  9
 10 Last 10 log lines:
 11 cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended     to silence earlier diagnostics
 12 cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been inten    ded to silence earlier diagnostics
 13 make[2]: Leaving directory '/tmp/ruby-build.20220607215706.16321.hja12y/ruby-2.6.10/ext/date'   14 cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silenc    e earlier diagnostics                                                                           15 cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended     to silence earlier diagnostics                                                                  16 cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been inten    ded to silence earlier diagnostics                                                              17 linking shared-object socket.so
 18 make[2]: Leaving directory '/tmp/ruby-build.20220607215706.16321.hja12y/ruby-2.6.10/ext/socket' 19 make[1]: Leaving directory '/tmp/ruby-build.20220607215706.16321.hja12y/ruby-2.6.10'
 20 make: *** [uncommon.mk:286: build-ext] Error 2

2.7.6 gives:

Downloading ruby-2.7.6.tar.bz2...
  2 -> https://cache.ruby-lang.org/pub/ruby/2.7/ruby-2.7.6.tar.bz2
  3 Installing ruby-2.7.6...
  4
  5 BUILD FAILED (Ubuntu 22.04 using ruby-build 20220426-3-g1038c07)
  6
  7 Inspect or clean up the working tree at /tmp/ruby-build.20220607221808.26955.YM2p7g
  8 Results logged to /tmp/ruby-build.20220607221808.26955.log
  9
 10 Last 10 log lines:
 11    from ./tool/rbinstall.rb:846:in `block (2 levels) in install_default_gem'                    12    from ./tool/rbinstall.rb:279:in `open_for_install'
 13    from ./tool/rbinstall.rb:845:in `block in install_default_gem'                               14    from ./tool/rbinstall.rb:835:in `each'
 15    from ./tool/rbinstall.rb:835:in `install_default_gem'
 16    from ./tool/rbinstall.rb:799:in `block in <main>'                                            17    from ./tool/rbinstall.rb:950:in `block in <main>'                                            18    from ./tool/rbinstall.rb:947:in `each'                                                       19    from ./tool/rbinstall.rb:947:in `<main>'                                                     20 make: *** [uncommon.mk:373: do-install-all] Error 1

3.0.4 gives:

Downloading ruby-3.0.4.tar.gz...
  2 -> https://cache.ruby-lang.org/pub/ruby/3.0/ruby-3.0.4.tar.gz
  3 Installing ruby-3.0.4...                                                                         4
  5 BUILD FAILED (Ubuntu 22.04 using ruby-build 20220426-3-g1038c07)
  6
  7 Inspect or clean up the working tree at /tmp/ruby-build.20220607224439.22472.y5B6bl
  8 Results logged to /tmp/ruby-build.20220607224439.22472.log
  9
 10 Last 10 log lines:
 11 installing bundled gem cache:       /home/agrevok/.rbenv/versions/3.0.4/lib/ruby/gems/3.0.0/cac    he                                                                                              12 The Ruby openssl extension was not compiled.                                                    13 ERROR: Ruby install aborted due to missing extensions                                           14 Try running `apt-get install -y libssl-dev` to fetch missing dependencies.                      15                                                                                                 16 Configure options used:                                                                         17   --prefix=/home/agrevok/.rbenv/versions/3.0.4                                                  18   --enable-shared                                                                               19   LDFLAGS=-L/home/agrevok/.rbenv/versions/3.0.4/lib                                             20   CPPFLAGS=-I/home/agrevok/.rbenv/versions/3.0.4/include

and 3.1.2 didn't fail.

gcc is:
gcc (Ubuntu 11.2.0-19ubuntu1) 11.2.0

I have clang-13 installed
( trying to get Haskell's GHCup & cabal system to work,
& failing in that, too )

I'm hoping that this info enables the ruby-build system
to be made to work, hopefully without bother.

Logfiles for those 4 failed builds are included below.

the ruby -v listed below is with the Ubuntu jammy apt installed one:
I haven't yet tried to switch between the 2 that apparently work on this machine, with rbenv.

Maybe tmr.

Salut, Namaste, & Kaizen


Files

ruby-build.20220607215706.16321.log (91 KB) ruby-build.20220607215706.16321.log 2.6.10 build failure libweirdness (Antryg Revok), 06/08/2022 04:40 AM
ruby-build.20220607213721.9846.log (97.5 KB) ruby-build.20220607213721.9846.log 2.5.9 build failure libweirdness (Antryg Revok), 06/08/2022 04:40 AM
ruby-build.20220607221808.26955.log (182 KB) ruby-build.20220607221808.26955.log 2.7.6 build failure libweirdness (Antryg Revok), 06/08/2022 04:40 AM
ruby-build.20220607224439.22472.log (219 KB) ruby-build.20220607224439.22472.log 3.0.4 build failure libweirdness (Antryg Revok), 06/08/2022 04:40 AM

Related issues 1 (0 open1 closed)

Is duplicate of Ruby master - Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x)Rejectedusa (Usaku NAKAMURA)Actions
Actions #1

Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

  • Is duplicate of Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x) added
Actions #2

Updated by hsbt (Hiroshi SHIBATA) over 2 years ago

  • Status changed from Open to Closed

Updated by libweirdness (Antryg Revok) over 2 years ago

the 2.5.x build-failure was due to all warnings being converted to errors, and some screwy casting ( between types ).

it looked to me like the reasons were different for different versions.

Updated by nobu (Nobuyoshi Nakada) over 2 years ago

The failure of 2.5.9 is here: https://bugs.ruby-lang.org/attachments/9280#L1851

ossl.c:311:9: error: ERR_get_error_line_data is deprecated: Since OpenSSL 3.0 [-Werror=deprecated-declarations]
  311 |         while ((e = ERR_get_error_line_data(&file, &line, &data, &flags))) {
      |         ^~~~~

That is an OpenSSL 3.0 issue.

Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0