If you are just blindly updating FreeBDS's port tree with
portmaster --no-confirm -aD
Gitlab may fail to start due to a newer version of icui18n.so installed on the system, failing to find the old one.
This is how the error manifests itself:
# less ~/gitlab/log/unicorn.stderr.log /usr/home/git/gitlab/vendor/bundle/ruby/2.2/gems/activesupport-4.1.11/lib/active_support/dependencies.rb:247:in `require': Shared object "libicui18n.so.55" not found, required by "charlock_holmes.so" - /usr/home/git/gitlab/vendor/bundle/ruby/2.2/gems/charlock_holmes-0.6.9.4/lib/charlock_holmes/charlock_holmes.so (LoadError) from /usr/home/git/gitlab/vendor/bundle/ruby/2.2/gems/activesupport-4.1.11/lib/active_support/dependencies.rb:247:in `block in require' from /usr/home/git/gitlab/vendor/bundle/ruby/2.2/gems/activesupport-4.1.11/lib/active_support/dependencies.rb:232:in `load_dependency' from /usr/home/git/gitlab/vendor/bundle/ruby/2.2/gems/activesupport-4.1.11/lib/active_support/dependencies.rb:247:in `require' ...
The fix is to reinstall the charlock_holmes gem, and then gitlab-shell:
cd gitlab bundle exec gem uninstall charlock_holmes bundle install bundle exec rake gitlab:shell:setup RAILS_ENV=production
Then start gitlab (obviously with sudo rights):
service gitlab start
Feel free to drop a line below if the fix worked for you. Cheers!
References: