Build onlyoffice:修订间差异
无编辑摘要 |
|||
第22行: | 第22行: | ||
| std::max | | std::max | ||
.... | .... | ||
</syntaxhighlight> | |||
Workaround: | |||
<syntaxhighlight lang="bash"> | |||
vim qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h | |||
# add | |||
#include <limits> | |||
</syntaxhighlight> | </syntaxhighlight> | ||
2024年6月21日 (五) 06:13的版本
Only office requires old version of qt
Linux build
Linux Mint 21.3
+ /home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/configure -top-level -opensource -confirm-license -release -shared -accessibility -prefix ./../qt_build/Qt-5.9.9/gcc_64 -qt-zlib -qt-libpng -qt-libjpeg -qt-xcb -qt-pcre -no-sql-sqlite -no-qml-debug -gstreamer 1.0 -nomake examples -nomake tests -skip qtenginio -skip qtlocation -skip qtserialport -skip qtsensors -skip qtxmlpatterns -skip qt3d -skip qtwebview -skip qtwebengine
Creating qmake...
........................................In file included from /home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearray.cpp:42:
/home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h: In static member function ‘static QStaticByteArrayMatcherBase::Skiptable QStaticByteArrayMatcherBase::generate(const char*, uint)’:
/home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h:103:38: error: ‘numeric_limits’ is not a member of ‘std’
103 | const auto uchar_max = (std::numeric_limits<uchar>::max)();
| ^~~~~~~~~~~~~~
/home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h:103:58: error: expected primary-expression before ‘>’ token
103 | const auto uchar_max = (std::numeric_limits<uchar>::max)();
| ^
/home/riguz/Documents/office/build_tools/tools/linux/qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h:103:61: error: ‘::max’ has not been declared; did you mean ‘std::max’?
103 | const auto uchar_max = (std::numeric_limits<uchar>::max)();
| ^~~
| std::max
....
Workaround:
vim qt-everywhere-opensource-src-5.9.9/qtbase/src/corelib/tools/qbytearraymatcher.h
# add
#include <limits>
Docker build (failed)
git clone https://github.com/ONLYOFFICE/build_tools
cd build_tools
cat version
8.1.0
Modifty the dockerfile:
FROM ubuntu:16.04
ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list && \
sed -i 's/security.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list && \
apt-get -y update && \
apt-get -y install software-properties-common && \
add-apt-repository ppa:openjdk-r/ppa && \
apt-get -y update && \
DEBIAN_FRONTEND=noninteractive apt-get -y install python \
python3 \
sudo \
openjdk-11-jdk \
openjdk-11-jdk-headless \
openjdk-11-jre \
openjdk-11-jre-headless \
git \
build-essential \
openssh-client
RUN rm /usr/bin/python && ln -s /usr/bin/python2 /usr/bin/python
ADD . /build_tools
WORKDIR /build_tools
CMD ["bash"]
docker build --tag onlyoffice-document-editors-builder .
docker run -it -v $PWD/out:/build_tools/out onlyoffice-document-editors-builder
cd tools/linux
python3 automate.py
Error:
ERROR: The OpenGL functionality tests failed!
You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2],
QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform.
ERROR: Feature 'gstreamer_1_0' was enabled, but the pre-condition 'libs.gstreamer_1_0' failed.