debian8にchromiumをインストールしたけど”LIBJPEG_6.2 not defined”というエラーが出た時の対処法

Pocket
LINEで送る
GREE にシェア
LinkedIn にシェア

こんにちわ。
 

下駄です。
 

Debianとかけまして、
 

「戦争の戦地」とときます。
 

そのココロは・・・
 

コマンド(commandとcommando)がたたけます。
 

chromiumはパソコンでもサーバーでも大人気

水分前から、不動のKINGだったIEを抜き去り、ブラウザ界の頂点に君臨している、GoogleChromeブラウザですが、
 

サーバーにおいても、Chromium(または、chromium-browser)という名前で、簡単にインストールができてしまいます。
 

GUI系ディストリビューションでも、CUI系でも、どちらでも重宝されるブラウザです。
 

GUIは、パソコンと同じ機能と使い勝手と、Googleアカウントとの連携で、環境が同期出来るために、もはやいらない説明は不要だと思いますが、
 

CUIでブラウザって、何に使うの?っていう人、「RPA」ですよ。
 

自動でサイトをクローリングして、情報をどんどん取得してしまう、プログラミングで、ウェブサーフィンを行う時代なんですよ、今は・・・エンジニア限定ですけど・・・
 

問題発生!!!

そんな便利なChromiumブラウザですが、nodejsのライブラリである、puppeteerと組み合わせることによって、javascript言語で簡単にスクレイピング作業ができるようになります。
 

でも、開発環境を手元のノートPCにDockerで作っておいたのに、「本番環境のサーバーにアップすると、何故かchromiumが動かないという事象が発生して、大慌ての巻」です。
 

そこでは下記のようなエラーメッセージが出ていました。
 

 

自分の作っているプログラムファイル名がどこにも出ていないので、なんとなくシステム環境による問題であることはひと目でわかります。
 

そして、「LIBJPEG_6.2 not defined」という文字がそもそもの原因であることも理解しました。
 

直訳すると、「LIBJPEG_6.2は定義されていません」です。
 

これ調べても、日本語解説が見つからなかったので、多方面でぐぐってみると、どうやら、libjpegというモジュールをインストールすればいいという事がわかりました。
 

ありがとう!stackoverflow!!!

解決への道

今回の本番サーバーは、Debian8(jessie)だったので、Debianの公式サイトに、このライブラリは置かれていました。
 

https://packages.debian.org/ja/buster/libjpeg62-turbo
 

さらに、CPUがatomだったので、「i386」バージョンをダウンロードしてみます。
 

https://packages.debian.org/ja/buster/i386/libjpeg62-turbo/download
 

このページのどのリージョンでもいいので、サーバーにダウンロードします。
 

 

そして、上記のコマンドでインストール完了です。
 

無事に、クローリング作業ができるようになりました。
 

ありがとうGoogle!、ありがとうDebian!
 

ああ、そうだ、余談ですが、サーバーのcpu情報が不明な時に、下記のコマンドで調べるといいですよ。
 

Leave a Reply

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です