mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-06 09:08:43 +08:00
Upgrade gcc in CentOS (#22086)
Signed-off-by: Enwei Jiao <enwei.jiao@zilliz.com>
This commit is contained in:
parent
d085abbd56
commit
e1ec24895d
@ -9,7 +9,7 @@
|
||||
# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
# or implied. See the License for the specific language governing permissions and limitations under the License.
|
||||
|
||||
FROM milvusdb/openblas:centos7-20210706
|
||||
FROM milvusdb/openblas:centos7-20230209
|
||||
|
||||
RUN yum install -y epel-release centos-release-scl-rh && yum install -y wget curl which && \
|
||||
wget -qO- "https://cmake.org/files/v3.24/cmake-3.24.0-linux-x86_64.tar.gz" | tar --strip-components=1 -xz -C /usr/local && \
|
||||
|
||||
@ -22,12 +22,12 @@ if ! whoami &> /dev/null; then
|
||||
fi
|
||||
|
||||
set +e
|
||||
if [ -f "/etc/profile.d/devtoolset-7.sh" ]; then
|
||||
source "/etc/profile.d/devtoolset-7.sh"
|
||||
if [ -f "/etc/profile.d/devtoolset-8.sh" ]; then
|
||||
source "/etc/profile.d/devtoolset-8.sh"
|
||||
fi
|
||||
|
||||
if [ -f "/etc/profile.d/llvm-toolset-7.sh" ]; then
|
||||
source "/etc/profile.d/llvm-toolset-7.sh"
|
||||
if [ -f "/etc/profile.d/llvm-toolset-8.sh" ]; then
|
||||
source "/etc/profile.d/llvm-toolset-8.sh"
|
||||
fi
|
||||
|
||||
# Exit immediately for non zero status
|
||||
|
||||
@ -9,7 +9,7 @@
|
||||
# is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
|
||||
# or implied. See the License for the specific language governing permissions and limitations under the License.
|
||||
|
||||
FROM milvusdb/openblas:centos7-20210706 AS openblas
|
||||
FROM milvusdb/openblas:centos7-20230209 AS openblas
|
||||
|
||||
FROM centos:centos7
|
||||
|
||||
|
||||
@ -3,11 +3,11 @@ FROM centos:centos7
|
||||
SHELL ["/bin/bash", "-o", "pipefail", "-c"]
|
||||
|
||||
RUN yum install -y epel-release centos-release-scl-rh && yum install -y wget make automake \
|
||||
devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-gcc-gfortran && \
|
||||
devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-gcc-gfortran && \
|
||||
rm -rf /var/cache/yum/* && \
|
||||
echo "source scl_source enable devtoolset-7" >> /etc/profile.d/devtoolset-7.sh
|
||||
echo "source scl_source enable devtoolset-8" >> /etc/profile.d/devtoolset-8.sh
|
||||
|
||||
RUN source /etc/profile.d/devtoolset-7.sh && \
|
||||
RUN source /etc/profile.d/devtoolset-8.sh && \
|
||||
wget https://github.com/xianyi/OpenBLAS/archive/v0.3.9.tar.gz && \
|
||||
tar zxvf v0.3.9.tar.gz && cd OpenBLAS-0.3.9 && \
|
||||
make TARGET=CORE2 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="-O3 -g -fPIC" FCOMMON_OPT="-O3 -g -fPIC -frecursive" NMAX="NUM_THREADS=128" LIBPREFIX="libopenblas" INTERFACE64=0 NO_STATIC=1 && \
|
||||
|
||||
@ -4,12 +4,12 @@
|
||||
|
||||
# Install devltoolset
|
||||
yum install -y epel-release centos-release-scl-rh && yum install -y wget make automake \
|
||||
devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-gcc-gfortran && \
|
||||
devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-gcc-gfortran && \
|
||||
rm -rf /var/cache/yum/* && \
|
||||
echo "source scl_source enable devtoolset-7" >> /etc/profile.d/devtoolset-7.sh
|
||||
echo "source scl_source enable devtoolset-8" >> /etc/profile.d/devtoolset-8.sh
|
||||
|
||||
# Install openblas
|
||||
source /etc/profile.d/devtoolset-7.sh && \
|
||||
source /etc/profile.d/devtoolset-8.sh && \
|
||||
wget https://github.com/xianyi/OpenBLAS/archive/v0.3.9.tar.gz && \
|
||||
tar zxvf v0.3.9.tar.gz && cd OpenBLAS-0.3.9 && \
|
||||
make TARGET=CORE2 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="-O3 -g -fPIC" FCOMMON_OPT="-O3 -g -fPIC -frecursive" NMAX="NUM_THREADS=128" LIBPREFIX="libopenblas" INTERFACE64=0 NO_STATIC=1 && \
|
||||
@ -19,14 +19,14 @@ source /etc/profile.d/devtoolset-7.sh && \
|
||||
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/lib"
|
||||
|
||||
# Install tbb
|
||||
source /etc/profile.d/devtoolset-7.sh && \
|
||||
source /etc/profile.d/devtoolset-8.sh && \
|
||||
git clone https://github.com/wjakob/tbb.git && \
|
||||
cd tbb/build && \
|
||||
cmake .. && make -j && make install && \
|
||||
cd ../../ && rm -rf tbb/
|
||||
|
||||
# Install boost
|
||||
source /etc/profile.d/devtoolset-7.sh && \
|
||||
source /etc/profile.d/devtoolset-8.sh && \
|
||||
wget -q https://boostorg.jfrog.io/artifactory/main/release/1.65.1/source/boost_1_65_1.tar.gz && \
|
||||
tar zxf boost_1_65_1.tar.gz && cd boost_1_65_1 && \
|
||||
./bootstrap.sh --prefix=/usr/local --with-toolset=gcc --without-libraries=python && \
|
||||
|
||||
@ -26,20 +26,20 @@ function install_linux_deps() {
|
||||
|
||||
sudo pip3 install conan
|
||||
elif [[ -x "$(command -v yum)" ]]; then
|
||||
# for CentOS devtoolset-7
|
||||
# for CentOS devtoolset-8
|
||||
sudo yum install -y epel-release centos-release-scl-rh
|
||||
sudo yum install -y wget curl which \
|
||||
git make automake python3-devel \
|
||||
devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-gcc-gfortran \
|
||||
llvm-toolset-7.0-clang llvm-toolset-7.0-clang-tools-extra \
|
||||
devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-gcc-gfortran \
|
||||
llvm-toolset-8.0-clang llvm-toolset-8.0-clang-tools-extra \
|
||||
libaio libuuid-devel unzip \
|
||||
ccache lcov libtool m4 autoconf automake
|
||||
|
||||
sudo pip3 install conan
|
||||
echo "source scl_source enable devtoolset-7" | sudo tee -a /etc/profile.d/devtoolset-7.sh
|
||||
echo "source scl_source enable llvm-toolset-7.0" | sudo tee -a /etc/profile.d/llvm-toolset-7.sh
|
||||
echo "export CLANG_TOOLS_PATH=/opt/rh/llvm-toolset-7.0/root/usr/bin" | sudo tee -a /etc/profile.d/llvm-toolset-7.sh
|
||||
source "/etc/profile.d/llvm-toolset-7.sh"
|
||||
echo "source scl_source enable devtoolset-8" | sudo tee -a /etc/profile.d/devtoolset-8.sh
|
||||
echo "source scl_source enable llvm-toolset-8.0" | sudo tee -a /etc/profile.d/llvm-toolset-8.sh
|
||||
echo "export CLANG_TOOLS_PATH=/opt/rh/llvm-toolset-8.0/root/usr/bin" | sudo tee -a /etc/profile.d/llvm-toolset-8.sh
|
||||
source "/etc/profile.d/llvm-toolset-8.sh"
|
||||
else
|
||||
echo "Error Install Dependencies ..."
|
||||
exit 1
|
||||
|
||||
@ -33,16 +33,16 @@ function install_linux_deps() {
|
||||
sudo yum install -y epel-release centos-release-scl-rh && \
|
||||
sudo yum install -y git make automake ccache openssl-devel zlib-devel libzstd-devel \
|
||||
libcurl-devel python3-devel \
|
||||
devtoolset-7-gcc devtoolset-7-gcc-c++ devtoolset-7-gcc-gfortran \
|
||||
llvm-toolset-7.0-clang llvm-toolset-7.0-clang-tools-extra
|
||||
devtoolset-8-gcc devtoolset-8-gcc-c++ devtoolset-8-gcc-gfortran \
|
||||
llvm-toolset-8.0-clang llvm-toolset-8.0-clang-tools-extra
|
||||
|
||||
echo "source scl_source enable devtoolset-7" | sudo tee -a /etc/profile.d/devtoolset-7.sh
|
||||
echo "source scl_source enable llvm-toolset-7.0" | sudo tee -a /etc/profile.d/llvm-toolset-7.sh
|
||||
echo "export CLANG_TOOLS_PATH=/opt/rh/llvm-toolset-7.0/root/usr/bin" | sudo tee -a /etc/profile.d/llvm-toolset-7.sh
|
||||
source "/etc/profile.d/llvm-toolset-7.sh"
|
||||
echo "source scl_source enable devtoolset-8" | sudo tee -a /etc/profile.d/devtoolset-8.sh
|
||||
echo "source scl_source enable llvm-toolset-8.0" | sudo tee -a /etc/profile.d/llvm-toolset-8.sh
|
||||
echo "export CLANG_TOOLS_PATH=/opt/rh/llvm-toolset-8.0/root/usr/bin" | sudo tee -a /etc/profile.d/llvm-toolset-8.sh
|
||||
source "/etc/profile.d/llvm-toolset-8.sh"
|
||||
|
||||
# install OpenBLAS, this could take a while.
|
||||
source "/etc/profile.d/devtoolset-7.sh" && \
|
||||
source "/etc/profile.d/devtoolset-8.sh" && \
|
||||
wget https://github.com/xianyi/OpenBLAS/archive/v0.3.9.tar.gz && \
|
||||
tar zxvf v0.3.9.tar.gz && cd OpenBLAS-0.3.9 && \
|
||||
make TARGET=CORE2 DYNAMIC_ARCH=1 DYNAMIC_OLDER=1 USE_THREAD=0 USE_OPENMP=0 FC=gfortran CC=gcc COMMON_OPT="-O3 -g -fPIC" FCOMMON_OPT="-O3 -g -fPIC -frecursive" NMAX="NUM_THREADS=128" LIBPREFIX="libopenblas" INTERFACE64=0 NO_STATIC=1 && \
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user