2021/04/30

MANUAL

Linux環境にサーバスクリプト実行環境をセットアップ(ライブラリの導入)

[■ .NET Core版のダウンロードはこちら ■](https://pleasanter.org) .NET Core版でサーバスクリプト機能を実行する際に必要なライブラリが古い場合には、以下の作業が必要となります。 ※GLIBCXX_3.4.26以上が必要となりますが、標準ではGLIBCXX_3.4.19がインストールされています。 ※必要なライブラリが存在しない場合、以下のようなエラーが表示されます。 「サーバスクリプトが正しくありません。[Cannot load ClearScript V8 library. Load failure information for ClearScriptV8.linux-x64.so:......」 ![image](/binaries/3121fbe5f34c43fa935e2bfae50c1c05) ※実行環境が構築されたうえでスクリプトの構文に誤りがある場合は、以下のようなエラーが表示されます。 「サーバスクリプトが正しくありません。[ReferenceError: modeel is not defined]」 ![image](/binaries/d4d739a4198343d0997c154cf03b5484) ## gcc / gcc-c++のインストール gccおよびgcc-c++がインストールされているか確認し、インストールされていない場合は yum を使ってインストールを実行します。 ・gccのバージョン確認 ``` gcc --version ``` 以下のようにバージョン情報が返ってきた場合にはインストールは不要です。 ``` gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-44) Copyright (C) 2015 Free Software Foundation, Inc. ``` 「コマンドが見つかりません」といったメッセージが返ってきた場合は、gccをインストールします。 ``` yum install gcc ``` 同様にgcc c++をインストールします。 ``` g++ --version ``` インストールされていない場合は、以下のコマンドでインストールしてください。 ``` yum install gcc-c++ gcc-10.1.0.tar.gz ``` ## gcc-10.1.0.tar.gzのコンパイルとインストール gcc-10.1.10.tar.gzを以下の公式サイトよりダウンロードしてください。 https://gcc.gnu.org/ ```caution ダウンロードに関しての注意事項 ミラーサイトの中にいくつか破損したファイルが含まれているケースがあるようです。 125MB程度のファイルであれば正しいファイルのようです。破損しているファイルはそれよりはだいぶファイルサイズが大きいようですので、ダウンロード前にご確認ください。 ``` ダウンロードしたファイルは以下に配置してください。 ``` /tmp/gcc-10.1.0.tar.gz ``` 配置後以下の通りコマンドを実行します。 ``` mkdir /usr/local/src/gcc-10.1.0 cp /tmp/gcc-10.1.0.tar.gz /usr/local/src/gcc-10.1.0/gcc-10.1.0.tar.gz cd /usr/local/src/gcc-10.1.0 tar xvzf gcc-10.1.0.tar.gz cd gcc-10.1.0 ./contrib/download_prerequisites ``` ``` ./contrib/download_prerequisites ``` でエラーが発生した場合は、以下を試してください。 エラー① ``` ./contrib/download_prerequisites: 58 行: type: wget: 見つかりません。 ``` エラー理由:wgetを実行するためのモジュールがインストールされていない。 ``` yum install wget ``` エラー② ``` tar (child): lbzip2: exec 不能: そのようなファイルやディレクトリはありません ``` エラー理由:bzip2を実行するためのモジュールがインストールされていない。 ``` yum install bzip2 ``` ``` ./configure --enable-languages=c,c++ --prefix=/usr/local/lib/gcc-10.1.0 --disable-bootstrap --disable-multilib make ``` ※make の処理にかなり時間を要する場合があります。実行環境のスペックに依存しますが、1時間またはそれ以上掛かるケースもございますのでご注意ください。 ``` make install /usr/local/lib/gcc-10.1.0/bin/gcc -v /usr/local/lib/gcc-10.1.0/bin/g++ -v ``` ## libstdc++ の入れ替え ``` ls -la /usr/local/lib/gcc-10.1.0/lib64/libstd* strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX ``` ## libstdc++.so.6.0.28 をコピーする ``` cp /usr/local/lib/gcc-10.1.0/lib64/libstdc++.so.6.0.28 /usr/lib64 ls -la /usr/lib64/libstd* cd /usr/lib64 mv libstdc++.so.6 libstdc++.so.6.bak ln -s libstdc++.so.6.0.28 libstdc++.so.6 ls -la /usr/lib64/libstd* strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX ``` ライブラリの更新作業は以上です。
このページをシェアする