Skip to content

Ruby 3.0.0 can't install sassc #331

@huacnlee

Description

@huacnlee

In ruby:3.0.0-preview1-slim-buster Docker image, I can't install sassc gem.

It also in 3.0.0-preview2 (including Alpine and Debian)

$ docker pull ruby:3.0.0-preview1-slim-buster
$ docker run -it ruby:3.0.0-preview1-slim-buster bash
$ gem install sassc
Fetching sassc-2.4.0.gem
Fetching ffi-1.13.1.gem
Building native extensions. This could take a while...
Successfully installed ffi-1.13.1
Building native extensions. This could take a while...
ERROR:  Error installing sassc:
	ERROR: Failed to build gem native extension.

    current directory: /usr/local/bundle/gems/sassc-2.4.0/ext
/usr/local/bin/ruby -I /usr/local/lib/ruby/3.0.0 -r ./siteconf20201209-7-qllpxx.rb extconf.rb
creating Makefile

current directory: /usr/local/bundle/gems/sassc-2.4.0/ext
make "DESTDIR=" clean

current directory: /usr/local/bundle/gems/sassc-2.4.0/ext
make "DESTDIR="
compiling ./libsass/src/ast.cpp
make: I.: Command not found
make: [Makefile:237: ast.o] Error 127 (ignored)
compiling ./libsass/src/ast2c.cpp
make: I.: Command not found
make: [Makefile:237: ast2c.o] Error 127 (ignored)
compiling ./libsass/src/ast_fwd_decl.cpp
make: I.: Command not found
make: [Makefile:237: ast_fwd_decl.o] Error 127 (ignored)
compiling ./libsass/src/ast_sel_cmp.cpp
make: I.: Command not found
make: [Makefile:237: ast_sel_cmp.o] Error 127 (ignored)
compiling ./libsass/src/ast_sel_super.cpp
make: I.: Command not found
make: [Makefile:237: ast_sel_super.o] Error 127 (ignored)
compiling ./libsass/src/ast_sel_unify.cpp
make: I.: Command not found
make: [Makefile:237: ast_sel_unify.o] Error 127 (ignored)
compiling ./libsass/src/ast_sel_weave.cpp
make: I.: Command not found
make: [Makefile:237: ast_sel_weave.o] Error 127 (ignored)
compiling ./libsass/src/ast_selectors.cpp
make: I.: Command not found
make: [Makefile:237: ast_selectors.o] Error 127 (ignored)
compiling ./libsass/src/ast_supports.cpp
make: I.: Command not found
make: [Makefile:237: ast_supports.o] Error 127 (ignored)
compiling ./libsass/src/ast_values.cpp
make: I.: Command not found
make: [Makefile:237: ast_values.o] Error 127 (ignored)
compiling ./libsass/src/backtrace.cpp
make: I.: Command not found
make: [Makefile:237: backtrace.o] Error 127 (ignored)
compiling ./libsass/src/base64vlq.cpp
make: I.: Command not found
make: [Makefile:237: base64vlq.o] Error 127 (ignored)
compiling ./libsass/src/bind.cpp
make: I.: Command not found
make: [Makefile:237: bind.o] Error 127 (ignored)
compiling ./libsass/src/c2ast.cpp
make: I.: Command not found
make: [Makefile:237: c2ast.o] Error 127 (ignored)
compiling ./libsass/src/c99func.c
compiling ./libsass/src/cencode.c
compiling ./libsass/src/check_nesting.cpp
make: I.: Command not found
make: [Makefile:237: check_nesting.o] Error 127 (ignored)
compiling ./libsass/src/color_maps.cpp
make: I.: Command not found
make: [Makefile:237: color_maps.o] Error 127 (ignored)
compiling ./libsass/src/constants.cpp
make: I.: Command not found
make: [Makefile:237: constants.o] Error 127 (ignored)
compiling ./libsass/src/context.cpp
make: I.: Command not found
make: [Makefile:237: context.o] Error 127 (ignored)
compiling ./libsass/src/cssize.cpp
make: I.: Command not found
make: [Makefile:237: cssize.o] Error 127 (ignored)
compiling ./libsass/src/emitter.cpp
make: I.: Command not found
make: [Makefile:237: emitter.o] Error 127 (ignored)
compiling ./libsass/src/environment.cpp
make: I.: Command not found
make: [Makefile:237: environment.o] Error 127 (ignored)
compiling ./libsass/src/error_handling.cpp
make: I.: Command not found
make: [Makefile:237: error_handling.o] Error 127 (ignored)
compiling ./libsass/src/eval.cpp
make: I.: Command not found
make: [Makefile:237: eval.o] Error 127 (ignored)
compiling ./libsass/src/eval_selectors.cpp
make: I.: Command not found
make: [Makefile:237: eval_selectors.o] Error 127 (ignored)
compiling ./libsass/src/expand.cpp
make: I.: Command not found
make: [Makefile:237: expand.o] Error 127 (ignored)
compiling ./libsass/src/extender.cpp
make: I.: Command not found
make: [Makefile:237: extender.o] Error 127 (ignored)
compiling ./libsass/src/extension.cpp
make: I.: Command not found
make: [Makefile:237: extension.o] Error 127 (ignored)
compiling ./libsass/src/file.cpp
make: I.: Command not found
make: [Makefile:237: file.o] Error 127 (ignored)
compiling ./libsass/src/fn_colors.cpp
make: I.: Command not found
make: [Makefile:237: fn_colors.o] Error 127 (ignored)
compiling ./libsass/src/fn_lists.cpp
make: I.: Command not found
make: [Makefile:237: fn_lists.o] Error 127 (ignored)
compiling ./libsass/src/fn_maps.cpp
make: I.: Command not found
make: [Makefile:237: fn_maps.o] Error 127 (ignored)
compiling ./libsass/src/fn_miscs.cpp
make: I.: Command not found
make: [Makefile:237: fn_miscs.o] Error 127 (ignored)
compiling ./libsass/src/fn_numbers.cpp
make: I.: Command not found
make: [Makefile:237: fn_numbers.o] Error 127 (ignored)
compiling ./libsass/src/fn_selectors.cpp
make: I.: Command not found
make: [Makefile:237: fn_selectors.o] Error 127 (ignored)
compiling ./libsass/src/fn_strings.cpp
make: I.: Command not found
make: [Makefile:237: fn_strings.o] Error 127 (ignored)
compiling ./libsass/src/fn_utils.cpp
make: I.: Command not found
make: [Makefile:237: fn_utils.o] Error 127 (ignored)
compiling ./libsass/src/inspect.cpp
make: I.: Command not found
make: [Makefile:237: inspect.o] Error 127 (ignored)
compiling ./libsass/src/json.cpp
make: I.: Command not found
make: [Makefile:237: json.o] Error 127 (ignored)
compiling ./libsass/src/lexer.cpp
make: I.: Command not found
make: [Makefile:237: lexer.o] Error 127 (ignored)
compiling ./libsass/src/listize.cpp
make: I.: Command not found
make: [Makefile:237: listize.o] Error 127 (ignored)
compiling ./libsass/src/memory/allocator.cpp
make: I.: Command not found
make: [Makefile:237: allocator.o] Error 127 (ignored)
compiling ./libsass/src/memory/shared_ptr.cpp
make: I.: Command not found
make: [Makefile:237: shared_ptr.o] Error 127 (ignored)
compiling ./libsass/src/operators.cpp
make: I.: Command not found
make: [Makefile:237: operators.o] Error 127 (ignored)
compiling ./libsass/src/output.cpp
make: I.: Command not found
make: [Makefile:237: output.o] Error 127 (ignored)
compiling ./libsass/src/parser.cpp
make: I.: Command not found
make: [Makefile:237: parser.o] Error 127 (ignored)
compiling ./libsass/src/parser_selectors.cpp
make: I.: Command not found
make: [Makefile:237: parser_selectors.o] Error 127 (ignored)
compiling ./libsass/src/plugins.cpp
make: I.: Command not found
make: [Makefile:237: plugins.o] Error 127 (ignored)
compiling ./libsass/src/position.cpp
make: I.: Command not found
make: [Makefile:237: position.o] Error 127 (ignored)
compiling ./libsass/src/prelexer.cpp
make: I.: Command not found
make: [Makefile:237: prelexer.o] Error 127 (ignored)
compiling ./libsass/src/remove_placeholders.cpp
make: I.: Command not found
make: [Makefile:237: remove_placeholders.o] Error 127 (ignored)
compiling ./libsass/src/sass.cpp
make: I.: Command not found
make: [Makefile:237: sass.o] Error 127 (ignored)
compiling ./libsass/src/sass2scss.cpp
make: I.: Command not found
make: [Makefile:237: sass2scss.o] Error 127 (ignored)
compiling ./libsass/src/sass_context.cpp
make: I.: Command not found
make: [Makefile:237: sass_context.o] Error 127 (ignored)
compiling ./libsass/src/sass_functions.cpp
make: I.: Command not found
make: [Makefile:237: sass_functions.o] Error 127 (ignored)
compiling ./libsass/src/sass_values.cpp
make: I.: Command not found
make: [Makefile:237: sass_values.o] Error 127 (ignored)
compiling ./libsass/src/source.cpp
make: I.: Command not found
make: [Makefile:237: source.o] Error 127 (ignored)
compiling ./libsass/src/source_map.cpp
make: I.: Command not found
make: [Makefile:237: source_map.o] Error 127 (ignored)
compiling ./libsass/src/stylesheet.cpp
make: I.: Command not found
make: [Makefile:237: stylesheet.o] Error 127 (ignored)
compiling ./libsass/src/to_value.cpp
make: I.: Command not found
make: [Makefile:237: to_value.o] Error 127 (ignored)
compiling ./libsass/src/units.cpp
make: I.: Command not found
make: [Makefile:237: units.o] Error 127 (ignored)
compiling ./libsass/src/utf8_string.cpp
make: I.: Command not found
make: [Makefile:237: utf8_string.o] Error 127 (ignored)
compiling ./libsass/src/util.cpp
make: I.: Command not found
make: [Makefile:237: util.o] Error 127 (ignored)
compiling ./libsass/src/util_string.cpp
make: I.: Command not found
make: [Makefile:237: util_string.o] Error 127 (ignored)
compiling ./libsass/src/values.cpp
make: I.: Command not found
make: [Makefile:237: values.o] Error 127 (ignored)
linking shared-object sassc/libsass.so
make: shared: Command not found
make: [Makefile:262: libsass.so] Error 127 (ignored)
strip: 'libsass.so': No such file
make: *** [Makefile:263: libsass.so] Error 1

make failed, exit code 2

Gem files will remain installed in /usr/local/bundle/gems/sassc-2.4.0 for inspection.
Results logged to /usr/local/bundle/extensions/x86_64-linux/3.0.0/sassc-2.4.0/gem_make.out

Because the sassc gem need CXX config a compiler g++ or c++, but it is empty.

$ docker pull ruby:3.0.0-preview1-slim-buster
$ docker run -it ruby:3.0.0-preview1-slim-buster bash
$ ruby -rrbconfig -e 'puts RbConfig::CONFIG["CC"]'
gcc
$ ruby -rrbconfig -e 'puts RbConfig::CONFIG["CXX"]'

$ 

In Ruby 2.7

$ docker pull ruby:2.7.2-slim-buster
$ docker run -it ruby:2.7.2-slim-buster bash
$ ruby -rrbconfig -e 'puts RbConfig::CONFIG["CC"]'
gcc
$ ruby -rrbconfig -e 'puts RbConfig::CONFIG["CXX"]'
g++
$ gem install sassc
Building native extensions. This could take a while...
Successfully installed sassc-2.4.0
Parsing documentation for sassc-2.4.0
Installing ri documentation for sassc-2.4.0
Done installing documentation for sassc after 1 seconds
1 gem installed

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions