質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

OpenSSL

OpenSSLはSSL/TLSのプロトコルと一般的な暗号のライブラリを導入するオープンソースのソフトウェアのツールキットです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

1回答

3359閲覧

Xserverでgit pull ができない

sug1t0m0

総合スコア40

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

Git

Gitはオープンソースの分散バージョン管理システム(DVCS)です。

OpenSSL

OpenSSLはSSL/TLSのプロトコルと一般的な暗号のライブラリを導入するオープンソースのソフトウェアのツールキットです。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2018/09/03 15:06

編集2018/09/04 12:36

XserverでGitHubを使えるようにしたいです。

先日、Xserverのsv1000番代から、sv5000番代にサーバーを移行しました。
それに伴いOpenSSLのバージョンは 0.9.8 → 1.0.1となったのですが、
以下に示すようなエラーを吐くようになってしまいました。

・エラーメッセージ

/home/<ユーザID>/opt/libexec/git-core/git-remote-https: error while loading shared libraries: libexpat.so.0: cannot open shared object file: No such file or directory

試したこと

・gitのインストール, アップデート

補足情報

このページと同じような問題な気がしているのですが、どのように

libcrypto.so.10 libgmp.so.10 libssl.so.10 libxtables.so.10

にシンボリックを貼ればいいのか分かりません。

よろしくお願いいたします。

gitは以下のようにインストールしました。

#インストールディレクトリ $ mkdir ~/opt #作業ディレクトリ $ mkdir ~/sysad $ cd ~/sysad $ wget "http://ftp.gnu.org/gnu/gettext/gettext-latest.tar.gz" $ tar zxvf gettext-latest.tar.gz #解凍されたディレクトリへ移動しmakeしてinstall 解凍ディレクトリ名はバージョンによって異なります $ cd gettext-0.19.1 $ ./configure --prefix=/home/<USER>/opt $ make install ##インストールされたか確認 ### gettext (GNU gettext-runtime) 0.19.8.1 のようにバージョンが表示されれば成功 $ ~/opt/bin/gettext --version  #git install $ cd ~/sysad/ $ wget https://github.com/git/git/archive/master.zip $ unzip master $ cd git-master $ autoconf $ ./configure --prefix=/home/<USER>/opt $ make all $ make install ##インストールされたか確認 $ ~/opt/bin/git --version git version 2.19.0-rc1

/usr/lib64 に'libexpat.so.1'はありました。
libexpat.so.0をインストールしようにもroot権限が使えないため、yum installしても弾かれてしまいます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2018/09/03 22:30

libexpat.so.0 は、ありますか? git は、どのようにインストールしましたか?
sug1t0m0

2018/09/03 22:42

gitはhttps://qiita.com/chr/items/aaa5a0e005958c7a9a16を参考にインストールしました。libexpat.so.0 があるかはどのように確認するばいいでしょか?
fu7mu4

2018/09/04 03:21

find /usr -name 'libexpat.so.0' などで検索しましょう。
sug1t0m0

2018/09/04 10:35

find /lib64 -name 'libexpat.so.0'を試したところ、何も出てこなかったので、おそらくlibexpat.so.0 はないと思います。
fu7mu4

2018/09/04 11:29

Xserverにlibexpat.soをインストールすればいいと思います。
sug1t0m0

2018/09/04 11:49

/usr/lib64 に'libexpat.so.1'ならありました。libexpat.so.0はどのようにインストールすればいいのでしょうか?root権限が使えないため、yum installしても弾かれてしまいます。
CHERRY

2018/09/04 12:29 編集

手元で試した限りは、存在しているライブラリを参照しに行きますので、git のインストール時に configure すれば、正しいライブラリを利用してくれるはずなんですけど... インストール時のコマンドやメッセージがわかれば、この行でエラーが出ているとか指摘できるかもしれません。
sug1t0m0

2018/09/04 12:38

インストール時のコマンドを追記しました。エラーメッセージについてはしばらくお待ちください。ありがとうございます。
fu7mu4

2018/09/04 12:49

gitのインストールのconfigureを実行する際に ./configure --helpを実行するとオプションが表示されます。gitをインストールしたフォルダで ./configure --help を実行していただけますか?
sug1t0m0

2018/09/04 12:54 編集

./configure --help の結果です。 git-master]$ ./configure --help `configure' configures git 2.11.0-rc0 to adapt to many kinds of systems. Usage: ./configure [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print `checking ...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for `--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or `..'] Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [/usr/local] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, `make install' will install all the files in `/usr/local/bin', `/usr/local/lib' etc. You can specify an installation prefix other than `/usr/local' using `--prefix', for instance `--prefix=$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] --datadir=DIR read-only architecture-independent data [DATAROOTDIR] --infodir=DIR info documentation [DATAROOTDIR/info] --localedir=DIR locale-dependent data [DATAROOTDIR/locale] --mandir=DIR man documentation [DATAROOTDIR/man] --docdir=DIR documentation root [DATAROOTDIR/doc/git] --htmldir=DIR html documentation [DOCDIR] --dvidir=DIR dvi documentation [DOCDIR] --pdfdir=DIR pdf documentation [DOCDIR] --psdir=DIR ps documentation [DOCDIR] Optional Features: --disable-option-checking ignore unrecognized --enable/--with options --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --enable-pthreads=FLAGS FLAGS is the value to pass to the compiler to enable POSIX Threads. The default if FLAGS is not specified is to try first -pthread and then -lpthread. --disable-pthreads will disable threading. --enable-jsmin=PATH PATH is the name of a JavaScript minifier or the absolute path to one. --enable-cssmin=PATH PATH is the name of a CSS minifier or the absolute path to one. Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-sane-tool-path=DIR-1[:DIR-2...:DIR-n] Directories to prepend to PATH in build system and generated scripts --with-lib=ARG ARG specifies alternative name for lib directory --with-openssl use OpenSSL library (default is YES) ARG can be prefix for openssl library and headers --with-libpcre support Perl-compatible regexes (default is NO) ARG can be also prefix for libpcre library and headers --with-curl support http(s):// transports (default is YES) ARG can be also prefix for curl library and headers --with-expat support git-push using http:// and https:// transports via WebDAV (default is YES) ARG can be also prefix for expat library and headers --without-iconv if your architecture doesn't properly support iconv --with-iconv=PATH PATH is prefix for libiconv library and headers used only if you need linking with libiconv --with-gitconfig=VALUE Use VALUE instead of /etc/gitconfig as the global git configuration file. If VALUE is not fully qualified it will be interpreted as a path relative to the computed prefix at runtime. --with-gitattributes=VALUE Use VALUE instead of /etc/gitattributes as the global git attributes file. If VALUE is not fully qualified it will be interpreted as a path relative to the computed prefix at runtime. --with-pager=VALUE Use VALUE as the fall-back pager instead of 'less'. This is used by things like 'git log' when the user does not specify a pager to use through alternate methods. eg: /usr/bin/pager --with-editor=VALUE Use VALUE as the fall-back editor instead of 'vi'. This is used by things like 'git commit' when the user does not specify a preferred editor through other methods. eg: /usr/bin/editor --with-shell=PATH provide PATH to shell --with-perl=PATH provide PATH to perl --with-python=PATH provide PATH to python --with-zlib=PATH provide PATH to zlib --with-tcltk use Tcl/Tk GUI (default is YES) ARG is the full path to the Tcl/Tk interpreter. Bare --with-tcltk will make the GUI part only if Tcl/Tk interpreter will be found in a system. Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a nonstandard directory <lib dir> LIBS libraries to pass to the linker, e.g. -l<library> CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I<include dir> if you have headers in a nonstandard directory <include dir> CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to <git@vger.kernel.org>.
fu7mu4

2018/09/04 14:33

./configure に --without-expatを加えるとexpatライブラリなしでビルドできますね。ただし、WebDavを使ったgit pushはできませんけれども。
guest

回答1

0

libexpat.so.1 をビルド時に見つけさせる方法

(動的にライブラリを探すパスを指定する) LD_LIBRARY_PATH 環境変数を確認します。

bash

1echo $LD_LIBRARY_PATH

この結果次のように:区切りでフルパスが表示される場合と空っぽの場合があります。
/usr/lib64:/usr/local/lib

空の場合、書き込み可能なフォルダがない場合、以下を実行して、適当なフォルダのフルパスを追加します。ここでは${HOME}/libとする

bash

1export LD_LIBRARY_PATH=${HOME}/lib:$LD_LIBRARY_PATH

実際にそのフォルダがない場合は、mkdir -p ${HOME}/lib などで作成してください。

LD_LIBRARY_PATH の中の書き込み可能なフォルダに libexpat.so.1 のシンボリックリンクを作成してください。

それから gitをソースからインストールするconfigureを実行すると、configureスクリプトが libexpat.so.1 を見付けてくれるでしょう。

インストールが終りましたら実行まで確認してください。LD_LIBRARY_PATHの値を変更した場合、ログアウト後に設定が失われてしまうため、 .bashrc や .bash_profileに LD_LIBRARY_PATHの値を変更するように記載します(ここでは${HOME}/lib)。

bash

1export LD_LIBRARY_PATH=${HOME}/lib:$LD_LIBRARY_PATH

投稿2018/09/04 15:06

fu7mu4

総合スコア1088

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sug1t0m0

2018/09/04 15:23

すみません。先ほど、https://blog.ko31.com/201606/xserver-git-install/を参考にcurlをインストールしたところ、「 Protocol "https" not supported or disabled in libcurl」というエラーに変わってしまいました。(おそらくconfigureスクリプトがlibexpat.soを見つけてくれたからだと思うのですが。)また、curlをインストールするときにprotocolにhttpsとftpsが登録されません。「./configure --with-ssl」なども試したのですが、ダメでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問