{"id":13463219,"url":"https://github.com/rmagick/rmagick","last_synced_at":"2025-05-13T18:11:33.883Z","repository":{"id":18993217,"uuid":"22215041","full_name":"rmagick/rmagick","owner":"rmagick","description":"Ruby bindings for ImageMagick","archived":false,"fork":false,"pushed_at":"2025-05-05T21:26:21.000Z","size":13699,"stargazers_count":714,"open_issues_count":12,"forks_count":139,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-05-10T12:02:05.548Z","etag":null,"topics":["imagemagick","rmagick","ruby"],"latest_commit_sha":null,"homepage":"https://rmagick.github.io/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rmagick.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2014-07-24T14:02:31.000Z","updated_at":"2025-05-05T21:26:25.000Z","dependencies_parsed_at":"2024-01-20T05:30:23.959Z","dependency_job_id":"c24545d0-78b3-4cc8-836c-b328263678f5","html_url":"https://github.com/rmagick/rmagick","commit_stats":{"total_commits":3629,"total_committers":63,"mean_commits":57.6031746031746,"dds":0.443923945990631,"last_synced_commit":"7775ae2876e6d14100b56bc803fc92fb957d45e2"},"previous_names":[],"tags_count":120,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmagick%2Frmagick","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmagick%2Frmagick/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmagick%2Frmagick/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rmagick%2Frmagick/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rmagick","download_url":"https://codeload.github.com/rmagick/rmagick/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253568486,"owners_count":21928901,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["imagemagick","rmagick","ruby"],"created_at":"2024-07-31T13:00:48.329Z","updated_at":"2025-05-13T18:11:33.861Z","avatar_url":"https://github.com/rmagick.png","language":"C++","funding_links":[],"categories":["Graphics","Image Processing","Visualization","C++","Imagery","Gems","NLP Pipeline Subtasks"],"sub_categories":["Image Processing","Graphics","Syntactic Processing"],"readme":"RMagick\n=======\n\n[![GemVersion](https://img.shields.io/gem/v/rmagick.svg?style=flat)](https://rubygems.org/gems/rmagick)\n![CI](https://github.com/rmagick/rmagick/workflows/CI/badge.svg)\n\nTable of Contents\n-----------------\n\n-   [Introduction](#introduction)\n-   [Prerequisites](#prerequisites)\n-   [Installing RMagick](#installing-rmagick)\n-   [Using RMagick](#using-rmagick)\n-   [Things that can go wrong](#things-that-can-go-wrong)\n-   [Upgrading](#upgrading)\n-   [More samples](#more-samples)\n-   [Reporting Bugs](#reporting-bugs)\n-   [Development Setup](#development-setup)\n-   [Credits](#credits)\n-   [License](#mit-license)\n-   [Releasing](#releasing)\n\nIntroduction\n------------\n\nRMagick is an interface between the Ruby programming language and the\nImageMagick image processing library.\n\nPrerequisites\n-------------\n\nThese prerequisites are required for the latest version of RMagick.\n\n**OS**\n- Linux\n- \\*BSD\n- macOS\n- Windows\n- Other \\*nix-like systems\n\n**C++ compiler**\n- RMagick 5.4.0 or later requires a C++ compiler.\n\n**Ruby**\n- Version 3.0 or later.\n\nYou can get Ruby from \u003chttps://www.ruby-lang.org\u003e.\n\nRuby must be able to build C-Extensions (e.g. MRI, Rubinius, not JRuby)\n\n**ImageMagick**\n- Version 6.8.9 or later (6.x.x).\n- Version 7.0.8 or later (7.x.x). Require RMagick 4.1.0 or later.\n\nYou can get ImageMagick from \u003chttps://imagemagick.org\u003e.\n\n### Linux\n#### Ubuntu\nOn Ubuntu, you can run:\n\n```sh\nsudo apt-get install libmagickwand-dev\n```\n\n#### Centos\nOn Centos, you can run:\n\n```sh\nsudo yum install ImageMagick-devel\n```\n\n#### Arch Linux\nOn Arch Linux, you can run:\n\n```sh\npacman -Syy imagemagick\n```\n\n#### Alpine Linux\nOn Alpine Linux, you can run:\n\n```\napk add imagemagick imagemagick-dev imagemagick-libs\n```\n\nor you can run if you would like to use ImageMagick 6:\n\n```\napk add imagemagick6 imagemagick6-dev imagemagick6-libs\n```\n\n### macOS\nOn macOS, you can run:\n\n```sh\nbrew install imagemagick\n```\n\nor you can run if you would like to use ImageMagick 6:\n\n```sh\nbrew install imagemagick@6\n```\n\n### Windows\n1. Install latest Ruby+Devkit package which you can get from [RubyInstaller for Windows](https://rubyinstaller.org).\n2. Download `ImageMagick-7.XXXX-Q16-x64-dll.exe` (not, `ImageMagick-7.XXXX-Q16-x64-static.exe`) binary from [Windows Binary Release](https://imagemagick.org/script/download.php#windows), or you can download ImageMagick 6 from [Windows Binary Release](https://legacy.imagemagick.org/script/download.php#windows).\n3. Install ImageMagick. You need to turn on checkboxes `Add application directory to your system path` and `Install development headers for C and C++` in an installer for RMagick.\n\u003cimg width=\"75%\" src=\"https://github.com/rmagick/rmagick/assets/199156/494e7963-cca5-4cb5-b28a-6c4d76adce5d\" /\u003e\n\nIf you want to install ImageMagick using [winget](https://learn.microsoft.com/en-us/windows/package-manager/winget/), run the following command:\n\n```sh\nwinget install ImageMagick.ImageMagick --custom /TASKS=modifypath,install_Devel\n```\n\nIf you want to install ImageMagick using [Chocolatey](https://chocolatey.org/), run the following command:\n\n```sh\nchoco install imagemagick -PackageParameters InstallDevelopmentHeaders=true\n```\n\nInstalling RMagick\n------------------\n\n\u003e [!NOTE]\n\u003e When you update the ImageMagick version, we have recommended you should re-install RMagick.\n\n### Installing via Bundler\n\nAdd to your `Gemfile`:\n\n```rb\ngem 'rmagick'\n```\n\nThen run:\n\n```sh\nbundle install\n```\n\nFor Windows, you need to run using [ridk tool](https://github.com/oneclick/rubyinstaller2/wiki/The-ridk-tool):\n```sh\nridk exec bundle install\n```\n\n### Installing via RubyGems\n\nRun:\n\n```sh\ngem install rmagick\n```\n\nFor Windows, you need to run using [ridk tool](https://github.com/oneclick/rubyinstaller2/wiki/The-ridk-tool):\n```sh\nridk exec gem install rmagick\n```\n\n### Versioning\n\nRMagick is versioned according to Semantic Versioning. For stable version\ncompatible with Ruby 3.0+, use `~\u003e 3.0`. Versions \u003e= 6 work on Ruby \u003e= 3.x\nonly.\n\nUsing RMagick\n-------------\n\nRequire RMagick in your project as follows:\n\n```rb\nrequire 'rmagick'\n```\n\nSee \u003chttps://rmagick.github.io/usage.html\u003e for links to more information.\n\nThings that can go wrong\n------------------------\n\nThe [RMagick installation FAQ][faq] has answers to the most commonly reported\nproblems, though may be out of date.\n\n### Can't install RMagick. Can't find libMagickCore-XXXX.so or one of the dependent libraries. Check the mkmf.log file for more detailed information\n\nTypically this message means that one or more of the libraries that ImageMagick\ndepends on hasn't been installed. Examine the mkmf.log file in the ext/RMagick\nsubdirectory of the installation directory for any error messages. These\nmessages typically contain enough additional information for you to be able to\ndiagnose the problem. Also see [this FAQ][libmagick-faq].\n\n### Cannot open shared object file\n\nIf you get a message like this:\n\n```sh\n... /core_ext/kernel_require.rb\u003e:136:in `require': cannot load such file -- RMagick2.so (LoadError)\n  (snip)\n```\n\nyou probably do not have the directory in which the ImageMagick library\nis installed in your load path. An easy way to fix this is to define\nthe directory in the `LD_LIBRARY_PATH` environment variable. For\nexample, suppose you installed the ImageMagick library `libMagickCore-XXXX.so` in\n`/usr/local/lib`. (By default this is where it is installed.) Create the\n`LD_LIBRARY_PATH` variable like this:\n\n```sh\nexport LD_LIBRARY_PATH=/usr/local/lib\n```\n\nOn Linux, see `ld(1)` and `ld.so(8)` for more information. On other operating\nsystems, see the documentation for the dynamic loading facility.\n\nThis operation might not be required when you can use 4.2.5 or later.\n\n### Segmentation fault\n\nDefault stack size of your operating system might be too small. Try removing\nthe limit with this command:\n\n```sh\nulimit -s unlimited\n```\n\nUpgrading\n---------\n\nIf you upgrade to a newer release of ImageMagick, make sure you're using a\nrelease of RMagick that supports that release. It's safe to install a new\nrelease of RMagick over an earlier release.\n\nMore samples\n------------\n\nYou can find more sample RMagick programs in the [/examples](https://github.com/rmagick/rmagick/tree/main/examples) and [/doc/ex](https://github.com/rmagick/rmagick/tree/main/doc/ex) directories. These\nprograms are not installed in the RMagick documentation tree.\n\nReporting bugs\n--------------\n\nPlease report bugs in RMagick, its documentation, or its installation programs\nvia the bug tracker on the [RMagick issues page][issues].\n\nHowever, We can't help with Ruby installation and configuration or ImageMagick\ninstallation and configuration. Information about reporting problems and\ngetting help for ImageMagick is available at the [ImageMagick\nwebsite][imagemagick] or the [ImageMagick Forum][imagemagick-forum].\n\nDevelopment Setup\n-----------------\n\nIn order to minimize issues on your local machine, we recommend that you make\nuse of a [Vagrant installation][dev-box].\n\nSteps to get up and running with a passing build are as follows:\n\n### 1) set up the Vagrant environment\n\nIf you don't already have Vagrant installed, you can download and install it\nfrom [here][vagrant]. Once installed, we can set up a pre-built environment:\n\n```sh\ngit clone https://github.com/tjschuck/rake-compiler-dev-box.git\ncd rake-compiler-dev-box\nvagrant up\n```\n\nThis last part will probably take a while as it has to download an Ubuntu image\nand configure it. If there is an error during this process, you may need to\nreboot your computer and enable virtualization in your BIOS settings.\n\n### 2) clone RMagick and log in to the vagrant box\n\nWithin the `rake-compiler-dev-box` directory:\n\n```sh\ngit clone https://github.com/rmagick/rmagick.git # or your fork\nvagrant ssh\n```\n\n### 3) install ImageMagick and additional environment stuff\n\n```sh\ncd /vagrant/rmagick\nexport IMAGEMAGICK_VERSION=6.8.9-10\nbash ./before_install_linux.sh\n```\n\nThis will take just a few minutes to build ImageMagick\n\n### 4) build RMagick\n\n```sh\nrake\n```\n\nThis compiles the RMagick extensions and runs the tests. If all goes well\nyou'll see a lot of output, eventually ending in something like:\n\n```sh\nFinished tests in 35.865734s, 11.3758 tests/s, 6560.3007 assertions/s.\n\n408 tests, 235290 assertions, 0 failures, 0 errors, 0 skips\n```\n\nAnd you're all set! The copy of RMagick within `/vagrant/rmagick` inside your\nVagrant session is the same as the one in the `rake-compiler-dev-box` directory\non your machine. You can make changes locally and run tests within your `ssh`\nsession.\n\nCredits\n-------\n\n**Authors:** Tim Hunter, Omer Bar-or, Benjamin Thomas\n\nThanks to [ImageMagick Studio LLC][imagemagick] for ImageMagick and for hosting\nthe RMagick documentation.\n\nLicense\n-----------\n\n[MIT License](LICENSE)\n\nReleasing\n---------\n\nSee \u003chttps://github.com/rmagick/rmagick/wiki/Release-Process\u003e\n\n1.  Update ChangeLog\n2.  Edit `lib/rmagick/version.rb`\n3.  Are the tests passing? Run `rake` again just to be sure.\n4.  `rake release`\n\n[issues]: https://github.com/rmagick/rmagick/issues\n[libmagick-faq]: https://web.archive.org/web/20140512193354/https://rmagick.rubyforge.org/install-faq.html#libmagick\n[faq]: https://web.archive.org/web/20140512193354/https://rmagick.rubyforge.org/install-faq.html\n[imagemagick]: https://imagemagick.org\n[imagemagick-forum]: https://imagemagick.org/discourse-server\n[dev-box]: https://github.com/tjschuck/rake-compiler-dev-box\n[vagrant]: https://www.vagrantup.com/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frmagick%2Frmagick","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frmagick%2Frmagick","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frmagick%2Frmagick/lists"}