Git Product home page Git Product logo

heroku-buildpack-graphicsmagick's Introduction

heroku-buildpack-graphicsmagick

Use the latest version of GraphicsMagick (1.3.23) inside Heroku.

Usage

Insert the buildback before the main buildpack for your application:

heroku buildpacks:add --index 1 https://github.com/mcollina/heroku-buildpack-graphicsmagick.git

The next time you push your application it should install graphicsmagick before your application buildpack.

For more info see: https://devcenter.heroku.com/articles/using-multiple-buildpacks-for-an-app

Hacking

To change this buildpack, fork it on Github. Push up changes to your fork, then create a test app with --buildpack <your-github-url> and push to it.

To change the vendored binaries for ImageMagick, use the helper scripts in the support/ subdirectory. You'll need an S3-enabled AWS account and a bucket to store your binaries in. The bucket name and imagemagick version are stored in the configs.sh file, so update it there (if you plan to contribute back to this repo, do this in a separate commit).

To rebuild the ImageMagick package, you can:

$ export AWS_ID=xxx AWS_SECRET=yyy
$ s3 create $S3_BUCKET
$ support/package_graphicsmagick

Commit and push the changes to your buildpack to your Github fork, then push your sample app to Heroku to test. You should see:

-----> Downloading graphicsmagick YOUR_IMAGE_MAGICK_VERSION_HERE

There is also a Vagrantfile which can be used with Vagrant to build a cedar-14 virtual machine using Heroku's own open-source provisioning scripts. This allows you to build and test your changes in a local VM with a shared filesystem rather than having to push your changes up to Github and building on Heroku.

To build with VMs install Vagrant and then run vagrant up. Once it completes you will have a VM named cedar-14. Vagrant by default will map your project folder to /vagrant on the VM's filesystem.

Heroku Cedar

Heroku dropped the cedar stack on November 4th, 2015. If you still need to run this buildpack on cedar for whatever reason you can do by referencing an older version of the buildpack:

heroku buildpacks:add --index 1 https://github.com/mcollina/heroku-buildpack-graphicsmagick.git#35f87dd

Contributing to heroku-buildpack-graphicsmagick

  • Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution

This is an OPEN Open Source Project -- this means that:

Individuals making significant and valuable contributions are given commit-access to the project to contribute as they see fit. This project is more like an open wiki than a standard guarded open source project.

This project is currently being maintained by Ben Alavi (@benalavi).

LICENSE - "MIT License"

Copyright (c) 2013 Matteo Collina, http://matteocollina.com

Copyright (c) 2012 Heroku, Inc.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

heroku-buildpack-graphicsmagick's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

heroku-buildpack-graphicsmagick's Issues

Packaging tries to put files in `/app`

I'm just trying to create a build using updated versions of graphicsmagick, nasm and libpng.

The packaging process tries to put stuff in /app which of course is not present on my system. Is one supposed to execute the support/package_graphicsmagick script from the Vagrant machine, too?

Otherwise I'd propose make installing the files into a fake root directory instead and creating the packages from there.

Push rejected, failed to compile ruby app

Hello,

I've added this buildpack as stated on the readme, but it fails to build the gem "prawn-gmagick". Here is the log

Counting objects: 13, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (7/7), done.
Writing objects: 100% (7/7), 683 bytes | 0 bytes/s, done.
Total 7 (delta 6), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Fetching set buildpack https://github.com/mcollina/heroku-buildpack-graphicsmagick.git... done
remote: -----> GraphicsMagick app detected
remote: -----> Installing zlib 1.2.8
remote: -----> Installing libpng 1.5.17
remote: -----> Installing nasm 2.10.09
remote: -----> Installing libjpeg-turbo 1.3.0
remote: -----> Installing graphicsmagick 1.3.23
remote: -----> Building runtime environment for graphicsmagick
remote: -----> Using set buildpack heroku/ruby
remote: -----> Ruby app detected
remote: -----> Compiling Ruby/Rails
remote: -----> Using Ruby version: ruby-2.2.3
remote: -----> Installing dependencies using bundler 1.9.7
remote:        Running: bundle install --without development:test --path vendor/bundle --binstubs vendor/bundle/bin -j4 --deployment
remote:        Fetching gem metadata from https://rubygems.org/...........
remote:        Fetching version metadata from https://rubygems.org/...
remote:        Fetching dependency metadata from https://rubygems.org/..
remote:        Using rake 10.4.2
remote:        Using json 1.8.3
remote:        Using i18n 0.7.0
remote:        Using minitest 5.8.1
remote:        Using thread_safe 0.3.5
remote:        Using builder 3.2.2
remote:        Using erubis 2.7.0
remote:        Using mini_portile 0.6.2
remote:        Using rack 1.6.4
remote:        Using mime-types 2.6.2
remote:        Using arel 6.0.3
remote:        Using addressable 2.3.8
remote:        Using extlib 0.9.16
remote:        Using multi_json 1.11.2
remote:        Using execjs 2.6.0
remote:        Using bcrypt 3.1.10
remote:        Using sass 3.4.19
remote:        Using coffee-script-source 1.9.1.1
remote:        Using thor 0.19.1
remote:        Using orm_adapter 0.5.0
remote:        Using devise-i18n 0.12.1
remote:        Using escape_utils 1.1.0
remote:        Using multipart-post 2.0.0
remote:        Using jwt 1.5.1
remote:        Using little-plugger 1.1.4
remote:        Using memoist 0.12.0
remote:        Using retriable 1.4.1
remote:        Using oauth 0.4.7
remote:        Using multi_xml 0.5.5
remote:        Using high_voltage 2.4.0
remote:        Using pdf-core 0.6.0
remote:        Using pg 0.18.3
remote:        Using ttfunk 1.4.0
remote:        Using bundler 1.9.7
remote:        Using rails_serve_static_assets 0.0.4
remote:        Using rails_stdout_logging 0.0.4
remote:        Using rubyzip 1.1.7
remote:        Using ruby-ole 1.2.11.8
remote:        Using tilt 2.0.1
remote:        Using tzinfo 1.2.2
remote:        Using nokogiri 1.6.6.2
remote:        Using rack-test 0.6.3
remote:        Using warden 1.2.3
remote:        Using sprockets 3.4.0
remote:        Using mail 2.6.3
remote:        Using launchy 2.4.3
remote:        Using autoparse 0.3.3
remote:        Using autoprefixer-rails 6.0.3
remote:        Using uglifier 2.7.2
remote:        Using coffee-script 2.4.1
remote:        Using faraday 0.9.2
remote:        Using logging 2.0.0
remote:        Using prawn 2.0.2
remote:        Using rails_12factor 0.0.3
remote:        Using spreadsheet 1.0.8
remote:        Using activesupport 4.2.4
remote:        Using loofah 2.0.3
remote:        Using roo 2.1.1
remote:        Using bootstrap-sass 3.3.5.1
remote:        Using signet 0.6.1
remote:        Using oauth2 1.0.0
remote:        Using rails-deprecated_sanitizer 1.0.3
remote:        Using globalid 0.3.6
remote:        Using activemodel 4.2.4
remote:        Using jbuilder 2.3.2
remote:        Using rails-html-sanitizer 1.0.2
remote:        Using roo-xls 1.0.0
remote:        Using googleauth 0.4.2
remote:        Using rails-dom-testing 1.0.7
remote:        Using activejob 4.2.4
remote:        Using activerecord 4.2.4
remote:        Using google-api-client 0.8.6
remote:        Using actionview 4.2.4
remote:        Using google_drive 1.0.2
remote:        Using actionpack 4.2.4
remote:        Using roo-google 1.0.0
remote:        Using actionmailer 4.2.4
remote:        Using railties 4.2.4
remote:        Using sprockets-rails 2.3.3
remote:        Using simple_form 3.2.0
remote:        Using simple-spreadsheet 0.4.1
remote:        Using coffee-rails 4.1.0
remote:        Using responders 2.1.0
remote:        Using jquery-rails 4.0.5
remote:        Using devise 3.5.2
remote:        Using rails 4.2.4
remote:        Using sass-rails 5.0.4
remote:        Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
remote:        /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/ruby-2.2.3/bin/ruby -r ./siteconf20151201-410-1fat5gv.rb extconf.rb
remote:        creating Makefile
remote:        make "DESTDIR=" clean
remote:        make "DESTDIR="
remote:        compiling image.c
remote:        image.c:3:30: fatal error: wand/magick_wand.h: No such file or directory
remote:        #include <wand/magick_wand.h>
remote:        ^
remote:        compilation terminated.
remote:        make: *** [image.o] Error 1
remote:        make failed, exit code 2
remote:        Gem files will remain installed in /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/bundle/ruby/2.2.0/gems/prawn-gmagick-0.0.8 for inspection.
remote:        Results logged to /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/prawn-gmagick-0.0.8/gem_make.out
remote:        An error occurred while installing prawn-gmagick (0.0.8), and Bundler cannot
remote:        continue.
remote:        Make sure that `gem install prawn-gmagick -v '0.0.8'` succeeds before bundling.
remote:        Bundler Output: Fetching gem metadata from https://rubygems.org/...........
remote:        Fetching version metadata from https://rubygems.org/...
remote:        Fetching dependency metadata from https://rubygems.org/..
remote:        Using rake 10.4.2
remote:        Using json 1.8.3
remote:        Using i18n 0.7.0
remote:        Using minitest 5.8.1
remote:        Using thread_safe 0.3.5
remote:        Using builder 3.2.2
remote:        Using erubis 2.7.0
remote:        Using mini_portile 0.6.2
remote:        Using rack 1.6.4
remote:        Using mime-types 2.6.2
remote:        Using arel 6.0.3
remote:        Using addressable 2.3.8
remote:        Using extlib 0.9.16
remote:        Using multi_json 1.11.2
remote:        Using execjs 2.6.0
remote:        Using bcrypt 3.1.10
remote:        Using sass 3.4.19
remote:        Using coffee-script-source 1.9.1.1
remote:        Using thor 0.19.1
remote:        Using orm_adapter 0.5.0
remote:        Using devise-i18n 0.12.1
remote:        Using escape_utils 1.1.0
remote:        Using multipart-post 2.0.0
remote:        Using jwt 1.5.1
remote:        Using little-plugger 1.1.4
remote:        Using memoist 0.12.0
remote:        Using retriable 1.4.1
remote:        Using oauth 0.4.7
remote:        Using multi_xml 0.5.5
remote:        Using high_voltage 2.4.0
remote:        Using pdf-core 0.6.0
remote:        Using pg 0.18.3
remote:        Using ttfunk 1.4.0
remote:        Using bundler 1.9.7
remote:        Using rails_serve_static_assets 0.0.4
remote:        Using rails_stdout_logging 0.0.4
remote:        Using rubyzip 1.1.7
remote:        Using ruby-ole 1.2.11.8
remote:        Using tilt 2.0.1
remote:        Using tzinfo 1.2.2
remote:        Using nokogiri 1.6.6.2
remote:        Using rack-test 0.6.3
remote:        Using warden 1.2.3
remote:        Using sprockets 3.4.0
remote:        Using mail 2.6.3
remote:        Using launchy 2.4.3
remote:        Using autoparse 0.3.3
remote:        Using autoprefixer-rails 6.0.3
remote:        Using uglifier 2.7.2
remote:        Using coffee-script 2.4.1
remote:        Using faraday 0.9.2
remote:        Using logging 2.0.0
remote:        Using prawn 2.0.2
remote:        Using rails_12factor 0.0.3
remote:        Using spreadsheet 1.0.8
remote:        Using activesupport 4.2.4
remote:        Using loofah 2.0.3
remote:        Using roo 2.1.1
remote:        Using bootstrap-sass 3.3.5.1
remote:        Using signet 0.6.1
remote:        Using oauth2 1.0.0
remote:        Using rails-deprecated_sanitizer 1.0.3
remote:        Using globalid 0.3.6
remote:        Using activemodel 4.2.4
remote:        Using jbuilder 2.3.2
remote:        Using rails-html-sanitizer 1.0.2
remote:        Using roo-xls 1.0.0
remote:        Using googleauth 0.4.2
remote:        Using rails-dom-testing 1.0.7
remote:        Using activejob 4.2.4
remote:        Using activerecord 4.2.4
remote:        Using google-api-client 0.8.6
remote:        Using actionview 4.2.4
remote:        Using google_drive 1.0.2
remote:        Using actionpack 4.2.4
remote:        Using roo-google 1.0.0
remote:        Using actionmailer 4.2.4
remote:        Using railties 4.2.4
remote:        Using sprockets-rails 2.3.3
remote:        Using simple_form 3.2.0
remote:        Using simple-spreadsheet 0.4.1
remote:        Using coffee-rails 4.1.0
remote:        Using responders 2.1.0
remote:        Using jquery-rails 4.0.5
remote:        Using devise 3.5.2
remote:        Using rails 4.2.4
remote:        Using sass-rails 5.0.4
remote:        
remote:        Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
remote:        
remote:        /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/ruby-2.2.3/bin/ruby -r ./siteconf20151201-410-1fat5gv.rb extconf.rb
remote:        creating Makefile
remote:        
remote:        make "DESTDIR=" clean
remote:        
remote:        make "DESTDIR="
remote:        compiling image.c
remote:        image.c:3:30: fatal error: wand/magick_wand.h: No such file or directory
remote:        #include <wand/magick_wand.h>
remote:        ^
remote:        compilation terminated.
remote:        make: *** [image.o] Error 1
remote:        
remote:        make failed, exit code 2
remote:        
remote:        Gem files will remain installed in /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/bundle/ruby/2.2.0/gems/prawn-gmagick-0.0.8 for inspection.
remote:        Results logged to /tmp/build_67e6fcc9a261dd1a1fa9f0daa7f1bbe1/vendor/bundle/ruby/2.2.0/extensions/x86_64-linux/2.2.0-static/prawn-gmagick-0.0.8/gem_make.out
remote:        An error occurred while installing prawn-gmagick (0.0.8), and Bundler cannot
remote:        continue.
remote:        Make sure that `gem install prawn-gmagick -v '0.0.8'` succeeds before bundling.
remote:  !
remote:  !     Failed to install gems via Bundler.
remote:  !
remote: 
remote:  !     Push rejected, failed to compile Ruby app
remote: 
remote: Verifying deploy....
remote: 
remote: ! Push rejected

Use versions to determine stack

As "cedar" is getting replaced by "cedar-14" most people will be interested in using this buildpack for "cedar-14". Unfortunately, regardless of your stack, the Vagrant configuration creates two VM's.

Considering the fact that heroku-buildpack-multi supports versioning I'd like to suggest the following; limit the Vagrant configuration and scripts to "cedar" and tag this as v1.0.0, then change the configuration for "cedar-14" and tag this as "v2.0.0".

This way the buildpack automatically uses the latest version, and users of the "cedar" stack simply suffix the URL with #v1.0.0. When building your release it works the same way, by default it's configured for "cedar-14" usage. For the "cedar" stack you can just check out the "v1.0.0" version.

Errors prevented bundling: While processing files with angular-templates (for target web.browser):

Hi there,

I'm trying to use graphicsmagick in my meteor-angular application. I use the following buildpacks:

  1. https://github.com/mcollina/heroku-buildpack-graphicsmagick.git
  2. https://github.com/AdmitHub/meteor-buildpack-horse.git

After pushing to heroku I receive the following error:

Errors prevented bundling:
While processing files with angular-templates (for target web.browser):
vendor/graphicsmagick/share/doc/GraphicsMagick/www/Magick++/Blob.html:1:
Expected tag name after <

for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/Magick++/TypeMetric.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/Hg.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/authors.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmark.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmarks.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/compare.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/composite.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/conjure.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/contribute.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/display.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/download.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/identify.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/import.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/index.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/montage.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/motion-picture.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/tools.html:1: Expected tag name after `<` for you) While processing files with angular-templates (for target web.cordova): vendor/graphicsmagick/share/doc/GraphicsMagick/www/Magick++/Blob.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/Magick++/TypeMetric.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/authors.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmark.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmarks.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/compare.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/composite.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/conjure.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/contribute.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/display.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/download.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/identify.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/import.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/index.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/montage.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/motion-picture.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/tools.html:1: Expected tag name after `<` for you) ! Push rejected, failed to compile Node.js app fter `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/authors.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmark.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/benchmarks.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/compare.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/composite.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/conjure.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/contribute.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/display.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/download.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/identify.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/import.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/index.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/montage.html:1: Can't set DOCTYPE here. (Meteor sets for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/motion-picture.html:1: Expected tag name after `<` for you) vendor/graphicsmagick/share/doc/GraphicsMagick/www/tools.html:1: Expected tag name after `<` for you) ! Push rejected, failed to compile Node.js app>

gm convert: FreeType library is not available (font.otf) [No such file or directory].

Using the same buildpack on cedar-14 giving me this error:

gm convert: FreeType library is not available (font.otf) [No such file or directory].

It appears that FreeType is disabled on cedar-14? gm -version shows this:

GraphicsMagick 1.3.18 2013-03-10 Q8 http://www.GraphicsMagick.org/
Copyright (C) 2002-2013 GraphicsMagick Group.
Additional copyrights and licenses apply to this software.
See http://www.GraphicsMagick.org/www/Copyright.html for details.

Feature Support:
Thread Safe              yes
Large Files (> 32 bit)   yes
Large Memory (> 32 bit)  yes
BZIP                     yes
DPS                      no
FlashPix                 no
FreeType                 no
Ghostscript (Library)    no
JBIG                     yes
JPEG-2000                yes
JPEG                     yes
Little CMS               yes
Loadable Modules         no
OpenMP                   yes (201107)
PNG                      yes
TIFF                     yes
TRIO                     no
UMEM                     no
WMF                      no
X11                      yes
XML                      yes
ZLIB                     yes

Host type: x86_64-unknown-linux-gnu

Configured using the command:
./configure  '--prefix' '/app/vendor/graphicsmagick'

Final Build Parameters:
CC       = gcc -std=gnu99
CFLAGS   = -fopenmp -g -O2 -Wall -pthread
CPPFLAGS = -I/usr/include/libxml2
CXX      = g++
CXXFLAGS = -pthread
LDFLAGS  = -L/usr/lib -L/usr/lib
LIBS     = -ljbig -llcms2 -ltiff -ljasper -ljpeg -lpng12 -lXext -lSM -lICE -lX11 -llzma -lbz2 -lxml2 -lz -lm -lgomp -lpthread

Perform compile time optimizations

I observed minor performance gain in gm using the following options while configuring and building gm:

-march=core2 -mtune=core2 -O3 -funroll-loops -m32 -msse -msse2 -msse3 -msse4 -msse4.1 -msse4.2 -mmmx -mfpmath=sse

This should be set in both CXXFLAGS and CFLAGS

nb: these options where tested using gcc 4.4.3, the default version on heroku at the moment of testing

/bin/sh: 1: gm: not found

Hi, I'm new to Heroku and I'm getting this error when I try to run gm.
/bin/sh: 1: gm: not found
Any idea why this error happens?

Issue with Heroku Cedar 16

Just noticed that heroku upgraded our instance to cedar 16, and now all GM commands are failing:

error: Worker 12: Error: Command failed: gm: error while loading shared libraries: libjasper.so.1: cannot open shared object file: No such file or directory

Downgrading to cedar 14 then resolved the issue. Just a FYI.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.