Bug #19275
closedBundled gems extensions are not installed with 3.2.0 release tarball
Description
Bundled gems extensions are not installed with 3.2.0 release tarball when cross building for aarch64-linux-android
target.
Possibly related to #19271.
Excerpt from build log:
2022-12-28T12:39:39.5065133Z linking shared-object rbs_extension.so
2022-12-28T12:39:39.5317220Z Successfully remade target file '../../../../../.bundle/extensions/aarch64-linux-android/3.2.0/rbs-2.8.2/rbs_extension.so'.
[...]
2022-12-28T12:40:06.9333744Z rm -rf .bundle/extensions/aarch64-linux-android/
Seems like bundled gems extensions are built but removed afterwards.
The workaround we took is to patch common.mk
so that outdate-bundled-gems
is not triggered:
--- a/common.mk
+++ b/common.mk
@@ -1375,7 +1375,6 @@
refresh-gems: update-bundled_gems prepare-gems
prepare-gems: $(HAVE_BASERUBY:yes=update-gems) $(HAVE_BASERUBY:yes=extract-gems)
-prepare-gems: $(DOT_WAIT) $(HAVE_BASERUBY:yes=outdate-bundled-gems)
extract-gems: $(HAVE_BASERUBY:yes=update-gems)
update-gems$(gnumake:yes=-sequential): PHONY
Full build log is attached.
Files
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
- Status changed from Open to Assigned
- Assignee set to hsbt (Hiroshi SHIBATA)
Updated by nobu (Nobuyoshi Nakada) almost 2 years ago
Could you show the output from ruby tool/outdate-bundled-gems.rb -n .
?
Updated by xtkoba (Tee KOBAYASHI) almost 2 years ago
Here it is:
rm -f ./.bundle/specifications/debug-1.7.1.gemspec
rm -f ./.bundle/specifications/rbs-2.8.2.gemspec
rm -rf ./.bundle/gems/debug-1.7.1/
rm -rf ./.bundle/gems/rbs-2.8.2/
rm -f .bundle/specifications/debug-1.7.1.gemspec
rm -f .bundle/specifications/rbs-2.8.2.gemspec
rm -rf .bundle/gems/debug-1.7.1/
rm -rf .bundle/gems/rbs-2.8.2/
This is the output of
ruby ${top_srcdir}/tool/outdate-bundled-gems.rb -n .
invoked right before or right after make install
, where top_srcdir
denotes the root of the source tree.
Updated by xtkoba (Tee KOBAYASHI) almost 2 years ago
Ah sorry, that is not correct. The output before make install
(right after make
with no target specified) should read:
rm -f ./.bundle/specifications/debug-1.7.1.gemspec
rm -f ./.bundle/specifications/rbs-2.8.2.gemspec
rm -rf ./.bundle/gems/debug-1.7.1/
rm -rf ./.bundle/gems/rbs-2.8.2/
rm -f .bundle/specifications/debug-1.7.1.gemspec
rm -f .bundle/specifications/rbs-2.8.2.gemspec
rm -rf .bundle/gems/debug-1.7.1/
rm -rf .bundle/gems/rbs-2.8.2/
rm -rf .bundle/extensions/aarch64-linux-android/
rm -rf .bundle/.timestamp/aarch64-linux-android/
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
- Related to Bug #19271: irb ignores rbs and debug added
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
I could reproduce this with BASERUBY and fresh install with tarball.
tool/outdate-bundled-gems.rb
will removing debug.so
and rbs_extension.so
while make install
.
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
We will fix this issue at https://github.com/ruby/ruby/pull/7066
Updated by xtkoba (Tee KOBAYASHI) almost 2 years ago
Thanks. The patch in https://bugs.ruby-lang.org/issues/19275 is literally the same as the one I posted here as a workaround, which I know works as expected.
I think this issue can be closed now, maybe as a duplicate of #19271.
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
- Status changed from Assigned to Closed
Updated by hsbt (Hiroshi SHIBATA) almost 2 years ago
- Related to Bug #19340: Ruby master 'make install' not installing rbs gem added