2017-11-19 19 views
0

Debian環境でソースからTileServer GLをビルドして実行するのに成功しましたが、このインストールの要件はCentOS 7であることです。問題。私はLinuxの専門家ではなく、想像力を持っているので、ここで誰かが何らかのガイダンスを提供できることを期待しています。以下は CentOS 7のソースからTileServer GLをビルド

は私がノードおよびCentOSの依存関係をインストールしています私のDockerfileの一部です:

FROM centos:latest 
RUN curl --silent --location https://rpm.nodesource.com/setup_6.x | bash - 
RUN yum -y install nodejs \ 
     cairo \ 
     cairo-devel \ 
     gcc-c++ \ 
     libcurl-devel \ 
     libgcc.x86_64 \ 
     libXxf86vm-devel \ 
     make \ 
     mesa-libGL-devel \ 
     mesa-libgbm \ 
     mesa-libGLES \ 
     protobuf-devel \ 
     xorg-x11-server-Xvfb 
RUN rm -rf /var/cache/yum 

# Symlink to libcurl-gnutls 
RUN ln -s /usr/lib64/libcurl.so.4 /usr/lib64/libcurl-gnutls.so.4 

私が開始しようとしますが、その後言うTileServer画像、docker runとき:

Error: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by /tileserver-gl/node_modules/@mapbox/mapbox-gl-native/lib/mapbox_gl_native.node) 

InをCentOS 7、GLIBCXXのバージョンは3.4.19に止まりました。私が読んだところでは、これを変更する方法はありません。だから私の質問は:

1)私はCentOSでlibstdC++を更新できないのは本当ですか?

2)真の場合は、これに別の方法がありますか?おそらく、以前のバージョンのC++が受け入れられるTileServer GLまたはmapbox-gl-nativeをビルドする方法はありますか?

この問題はmentioned in this issue threadですが、解決方法はありません。これに関する助けは本当に素晴らしいでしょう。

答えて

1

はあなたドッカーイメージに

RUN echo "[warning:fedora]" | tee /etc/yum.repos.d/FedoraRepo.repo && \ 
echo "name=fedora" | tee -a /etc/yum.repos.d/FedoraRepo.repo && \ 
echo "mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=fedora-23&arch=\$basearch" | tee -a /etc/yum.repos.d/FedoraRepo.repo && \ 
echo "enabled=1" | tee -a /etc/yum.repos.d/FedoraRepo.repo && \ 
echo "gpgcheck=1" | tee -a /etc/yum.repos.d/FedoraRepo.repo && \ 
echo "gpgkey=https://getfedora.org/static/34EC9CBA.txt" | tee -a /etc/yum.repos.d/FedoraRepo.repo && \ 
yum -y update gcc g++ 

を追加し、それが動作するはずです。それは少しハックだが、それは動作します:)

出典:https://github.com/rmrice/tileserver-gl/blob/0441685f0db7f890d9510039767a1f66f5e3edbe/docs/installation_centos.rst

+0

あなたは命の恩人だ!!私はあなたのソリューションがrmriceから来たのが好きです。これはもともとGithubの問題スレッドで質問をしたユーザーです。これは素晴らしいです - ありがとうございます。私は+1 000これは私ができる場合:) – esvendsen

関連する問題