Skip to content

Commit 65e76f5

Browse files
committed
Updated Docker setup to use GCC 4.8
Now that we depend on C++11, we need at least GCC 4.8 instead of 4.7. This change updates the Docker setup to continue using CentOS 6.6 but with GCC 4.8. I also added libm to the whitelist for dynamically linked libraries for the ARM64 protoc binary.
1 parent 79700b5 commit 65e76f5

File tree

3 files changed

+9
-10
lines changed

3 files changed

+9
-10
lines changed

protoc-artifacts/Dockerfile

+7-8
Original file line numberDiff line numberDiff line change
@@ -28,15 +28,14 @@ RUN wget -q http://apache.cs.utah.edu/maven/maven-3/3.3.9/binaries/apache-maven-
2828
tar xz -C /var/local
2929
ENV PATH /var/local/apache-maven-3.3.9/bin:$PATH
3030

31-
# Install GCC 4.7 to support -static-libstdc++
32-
RUN wget http://people.centos.org/tru/devtools-1.1/devtools-1.1.repo -P /etc/yum.repos.d && \
33-
bash -c 'echo "enabled=1" >> /etc/yum.repos.d/devtools-1.1.repo' && \
34-
bash -c "sed -e 's/\$basearch/i386/g' /etc/yum.repos.d/devtools-1.1.repo > /etc/yum.repos.d/devtools-i386-1.1.repo" && \
35-
sed -e 's/testing-/testing-i386-/g' -i /etc/yum.repos.d/devtools-i386-1.1.repo && \
31+
# Install GCC 4.8 to support -static-libstdc++
32+
RUN wget http://people.centos.org/tru/devtools-2/devtools-2.repo -P /etc/yum.repos.d && \
33+
bash -c 'echo "enabled=1" >> /etc/yum.repos.d/devtools-2.repo' && \
34+
bash -c "sed -e 's/\$basearch/i386/g' /etc/yum.repos.d/devtools-2.repo > /etc/yum.repos.d/devtools-i386-2.repo" && \
35+
sed -e 's/testing-/testing-i386-/g' -i /etc/yum.repos.d/devtools-i386-2.repo && \
3636
rpm --rebuilddb && \
37-
yum install -y devtoolset-1.1 \
38-
devtoolset-1.1-libstdc++-devel \
39-
devtoolset-1.1-libstdc++-devel.i686 && \
37+
yum install -y devtoolset-2-gcc devtoolset-2-gcc-c++ devtoolset-2-binutils devtoolset-2-libstdc++-devel \
38+
devtoolset-2-gcc.i686 devtoolset-2-gcc-c++.i686 devtoolset-2-binutils.i686 devtoolset-2-libstdc++-devel.i686 && \
4039
yum clean all
4140

4241
COPY scl-enable-devtoolset.sh /var/local/

protoc-artifacts/build-protoc.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -130,7 +130,7 @@ checkDependencies ()
130130
white_list="linux-vdso64\.so\.1\|libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|libz\.so\.1\|ld64\.so\.2"
131131
elif [[ "$ARCH" == aarch_64 ]]; then
132132
dump_cmd='objdump -p '"$1"' | grep NEEDED'
133-
white_list="libpthread\.so\.0\|libc\.so\.6\|ld-linux-aarch64\.so\.1"
133+
white_list="libpthread\.so\.0\|libm\.so\.6\|libc\.so\.6\|ld-linux-aarch64\.so\.1"
134134
fi
135135
elif [[ "$OS" == osx ]]; then
136136
dump_cmd='otool -L '"$1"' | fgrep dylib'

protoc-artifacts/scl-enable-devtoolset.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ quote() {
1010
done
1111
}
1212

13-
exec scl enable devtoolset-1.1 "$(quote "$@")"
13+
exec scl enable devtoolset-2 "$(quote "$@")"

0 commit comments

Comments
 (0)