User:Woozle/Redmine/2
2020-02-09
Redmine: download
The download/install instructions suggest strongly that using subversion is the best way to upgrade --
svn co https://svn.redmine.org/redmine/branches/4.0-stable redmine-4.0
...and then cd to the redmine-4.0
folder which that creates, and:
svn update
I think this assumes I'm working with an already-configured instance, though, so I should look at the installation guide before trying the svn update
.
On further reflection, I realized that I should probably be installing v4.1, in spite of the example:
svn co http://svn.redmine.org/redmine/branches/4.1-stable/ redmine-4.1
That seemed to work too.
Ruby
It looked like the packaged version of Ruby (2.5.1p57 (2018-03-29 revision 63029)) would be ok -- Redmine 4.1 wants Ruby 2.3, 2.4, 2.5, or 2.6 and Rails 5.2 -- so I did that.
Rails
I was never able to find actual instructions for installing Rails (unless you're serving from Windows or Mac for some reason), but a hint somewhere suggested that it could be installed with gem
:
root@cloud1:~# gem install rails Fetching: concurrent-ruby-1.1.5.gem (100%) Successfully installed concurrent-ruby-1.1.5 Fetching: i18n-1.8.2.gem (100%) HEADS UP! i18n 1.1 changed fallbacks to exclude default locale. But that may break your application. If you are upgrading your Rails application from an older version of Rails: Please check your Rails app for 'config.i18n.fallbacks = true'. If you're using I18n (>= 1.1.0) and Rails (< 5.2.2), this should be 'config.i18n.fallbacks = [I18n.default_locale]'. If not, fallbacks will be broken in your app by I18n 1.1.x. If you are starting a NEW Rails application, you can ignore this notice. For more info see: https://github.com/svenfuchs/i18n/releases/tag/v1.1.0 Successfully installed i18n-1.8.2 Fetching: thread_safe-0.3.6.gem (100%) Successfully installed thread_safe-0.3.6 Fetching: tzinfo-1.2.6.gem (100%) Successfully installed tzinfo-1.2.6 Fetching: zeitwerk-2.2.2.gem (100%) Successfully installed zeitwerk-2.2.2 Fetching: activesupport-6.0.2.1.gem (100%) Successfully installed activesupport-6.0.2.1 Fetching: rack-2.2.1.gem (100%) Successfully installed rack-2.2.1 Fetching: rack-test-1.1.0.gem (100%) Successfully installed rack-test-1.1.0 Fetching: mini_portile2-2.4.0.gem (100%) Successfully installed mini_portile2-2.4.0 Fetching: nokogiri-1.10.7.gem (100%) Building native extensions. This could take a while... ERROR: Error installing rails: ERROR: Failed to build gem native extension. current directory: /var/lib/gems/2.5.0/gems/nokogiri-1.10.7/ext/nokogiri /usr/bin/ruby2.5 -r ./siteconf20200209-18711-ifi5p4.rb extconf.rb mkmf.rb can't find header files for ruby at /usr/lib/ruby/include/ruby.h extconf failed, exit code 1 Gem files will remain installed in /var/lib/gems/2.5.0/gems/nokogiri-1.10.7 for inspection. Results logged to /var/lib/gems/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.10.7/gem_make.out
It took some puzzling to work out that the key part of that message was:
can't find header files for ruby at /usr/lib/ruby/include/ruby.h
...suggesting that the Ruby header files (presumably in the ruby-dev
package) need to be installed.
Having installed them, we will try again...
root@cloud1:~# gem install rails Building native extensions. This could take a while... ERROR: Error installing rails: ERROR: Failed to build gem native extension. current directory: /var/lib/gems/2.5.0/gems/nokogiri-1.10.7/ext/nokogiri /usr/bin/ruby2.5 -r ./siteconf20200209-10713-el6zi0.rb extconf.rb checking if the C compiler accepts ... yes Building nokogiri using packaged libraries. Using mini_portile version 2.4.0 checking for gzdopen() in -lz... no zlib is missing; necessary for building libxml2 *** extconf.rb failed *** Could not create Makefile due to some reason, probably lack of necessary libraries and/or headers. Check the mkmf.log file for more details. You may need configuration options. Provided configuration options: --with-opt-dir --without-opt-dir --with-opt-include --without-opt-include=${opt-dir}/include --with-opt-lib --without-opt-lib=${opt-dir}/lib --with-make-prog --without-make-prog --srcdir=. --curdir --ruby=/usr/bin/$(RUBY_BASE_NAME)2.5 --help --clean --use-system-libraries --enable-static --disable-static --with-zlib-dir --without-zlib-dir --with-zlib-include --without-zlib-include=${zlib-dir}/include --with-zlib-lib --without-zlib-lib=${zlib-dir}/lib --enable-cross-build --disable-cross-build To see why this extension failed to compile, please check the mkmf.log which can be found here: /var/lib/gems/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.10.7/mkmf.log extconf failed, exit code 1 Gem files will remain installed in /var/lib/gems/2.5.0/gems/nokogiri-1.10.7 for inspection. Results logged to /var/lib/gems/2.5.0/extensions/x86_64-linux/2.5.0/nokogiri-1.10.7/gem_make.out
Presumably we just need to install zlib... but searching for "zlib" in apt came up with several packages:
zlib1g | compression library - runtime |
zlib1g-dbg | compression library - development |
zlib1g-dev | compression library - development |
zlibc | An on-fly auto-uncompressing C library |
zopfli | zlib (gzip, deflate) compatible compressor |
Our first guess was zlib1g
, but that was already installed. Searching for the error came up with a post by someone who had solved it with zlib1g-dev
, so we tried that next... and it appears to have succeeded:
root@cloud1:~# gem install rails Building native extensions. This could take a while... Successfully installed nokogiri-1.10.7 Fetching: crass-1.0.6.gem (100%) Successfully installed crass-1.0.6 Fetching: loofah-2.4.0.gem (100%) Successfully installed loofah-2.4.0 Fetching: rails-html-sanitizer-1.3.0.gem (100%) Successfully installed rails-html-sanitizer-1.3.0 Fetching: rails-dom-testing-2.0.3.gem (100%) Successfully installed rails-dom-testing-2.0.3 Fetching: builder-3.2.4.gem (100%) Successfully installed builder-3.2.4 Fetching: erubi-1.9.0.gem (100%) Successfully installed erubi-1.9.0 Fetching: actionview-6.0.2.1.gem (100%) Successfully installed actionview-6.0.2.1 Fetching: actionpack-6.0.2.1.gem (100%) Successfully installed actionpack-6.0.2.1 Fetching: activemodel-6.0.2.1.gem (100%) Successfully installed activemodel-6.0.2.1 Fetching: activerecord-6.0.2.1.gem (100%) Successfully installed activerecord-6.0.2.1 Fetching: globalid-0.4.2.gem (100%) Successfully installed globalid-0.4.2 Fetching: activejob-6.0.2.1.gem (100%) Successfully installed activejob-6.0.2.1 Fetching: mini_mime-1.0.2.gem (100%) Successfully installed mini_mime-1.0.2 Fetching: mail-2.7.1.gem (100%) Successfully installed mail-2.7.1 Fetching: actionmailer-6.0.2.1.gem (100%) Successfully installed actionmailer-6.0.2.1 Fetching: nio4r-2.5.2.gem (100%) Building native extensions. This could take a while... Successfully installed nio4r-2.5.2 Fetching: websocket-extensions-0.1.4.gem (100%) Successfully installed websocket-extensions-0.1.4 Fetching: websocket-driver-0.7.1.gem (100%) Building native extensions. This could take a while... Successfully installed websocket-driver-0.7.1 Fetching: actioncable-6.0.2.1.gem (100%) Successfully installed actioncable-6.0.2.1 Fetching: mimemagic-0.3.4.gem (100%) Successfully installed mimemagic-0.3.4 Fetching: marcel-0.3.3.gem (100%) Successfully installed marcel-0.3.3 Fetching: activestorage-6.0.2.1.gem (100%) Successfully installed activestorage-6.0.2.1 Fetching: actionmailbox-6.0.2.1.gem (100%) Successfully installed actionmailbox-6.0.2.1 Fetching: actiontext-6.0.2.1.gem (100%) Successfully installed actiontext-6.0.2.1 Fetching: thor-1.0.1.gem (100%) Successfully installed thor-1.0.1 Fetching: method_source-0.9.2.gem (100%) Successfully installed method_source-0.9.2 Fetching: railties-6.0.2.1.gem (100%) Successfully installed railties-6.0.2.1 Fetching: bundler-2.1.4.gem (100%) Successfully installed bundler-2.1.4 Fetching: sprockets-4.0.0.gem (100%) Successfully installed sprockets-4.0.0 Fetching: sprockets-rails-3.2.1.gem (100%) Successfully installed sprockets-rails-3.2.1 Fetching: rails-6.0.2.1.gem (100%) Successfully installed rails-6.0.2.1 Parsing documentation for nokogiri-1.10.7 Installing ri documentation for nokogiri-1.10.7 Parsing documentation for crass-1.0.6 Installing ri documentation for crass-1.0.6 Parsing documentation for loofah-2.4.0 Installing ri documentation for loofah-2.4.0 Parsing documentation for rails-html-sanitizer-1.3.0 Installing ri documentation for rails-html-sanitizer-1.3.0 Parsing documentation for rails-dom-testing-2.0.3 Installing ri documentation for rails-dom-testing-2.0.3 Parsing documentation for builder-3.2.4 Installing ri documentation for builder-3.2.4 Parsing documentation for erubi-1.9.0 Installing ri documentation for erubi-1.9.0 Parsing documentation for actionview-6.0.2.1 Installing ri documentation for actionview-6.0.2.1 Parsing documentation for actionpack-6.0.2.1 Installing ri documentation for actionpack-6.0.2.1 Parsing documentation for activemodel-6.0.2.1 Installing ri documentation for activemodel-6.0.2.1 Parsing documentation for activerecord-6.0.2.1 Installing ri documentation for activerecord-6.0.2.1 Parsing documentation for globalid-0.4.2 Installing ri documentation for globalid-0.4.2 Parsing documentation for activejob-6.0.2.1 Installing ri documentation for activejob-6.0.2.1 Parsing documentation for mini_mime-1.0.2 Installing ri documentation for mini_mime-1.0.2 Parsing documentation for mail-2.7.1 Installing ri documentation for mail-2.7.1 Parsing documentation for actionmailer-6.0.2.1 Installing ri documentation for actionmailer-6.0.2.1 Parsing documentation for nio4r-2.5.2 Installing ri documentation for nio4r-2.5.2 Parsing documentation for websocket-extensions-0.1.4 Installing ri documentation for websocket-extensions-0.1.4 Parsing documentation for websocket-driver-0.7.1 Installing ri documentation for websocket-driver-0.7.1 Parsing documentation for actioncable-6.0.2.1 Installing ri documentation for actioncable-6.0.2.1 Parsing documentation for mimemagic-0.3.4 Installing ri documentation for mimemagic-0.3.4 Parsing documentation for marcel-0.3.3 Installing ri documentation for marcel-0.3.3 Parsing documentation for activestorage-6.0.2.1 Installing ri documentation for activestorage-6.0.2.1 Parsing documentation for actionmailbox-6.0.2.1 Installing ri documentation for actionmailbox-6.0.2.1 Parsing documentation for actiontext-6.0.2.1 Installing ri documentation for actiontext-6.0.2.1 Parsing documentation for thor-1.0.1 Installing ri documentation for thor-1.0.1 Parsing documentation for method_source-0.9.2 Installing ri documentation for method_source-0.9.2 Parsing documentation for railties-6.0.2.1 Installing ri documentation for railties-6.0.2.1 Parsing documentation for bundler-2.1.4 Installing ri documentation for bundler-2.1.4 Parsing documentation for sprockets-4.0.0 Installing ri documentation for sprockets-4.0.0 Parsing documentation for sprockets-rails-3.2.1 Installing ri documentation for sprockets-rails-3.2.1 Parsing documentation for rails-6.0.2.1 Installing ri documentation for rails-6.0.2.1 Done installing documentation for nokogiri, crass, loofah, rails-html-sanitizer, rails-dom-testing, builder, erubi, actionview, actionpack, activemodel, activerecord, globalid, activejob, mini_mime, mail, actionmailer, nio4r, websocket-extensions, websocket-driver, actioncable, mimemagic, marcel, activestorage, actionmailbox, actiontext, thor, method_source, railties, bundler, sprockets, sprockets-rails, rails after 38 seconds 32 gems installed