build_tools icon indicating copy to clipboard operation
build_tools copied to clipboard

Is still Ubuntu 16.04 the suggested distro to build ?

Open adriangibanelbtactic opened this issue 1 year ago • 9 comments

As I have already reported in https://github.com/ONLYOFFICE/build_tools/issues/802#issuecomment-2098265847 builds from Docker (which uses Ubuntu 16.04) seem to fail.

It probably arises from a depot_tools repo commit from April (one month ago) which forces you to use Python 3.6 or a newer version. I was wondering if, as it has already happened in the past OnlyOffice is built internally with some other dependencies and the Github repo is not updated yet.

I suspect that now internal builds are based on Ubuntu 20.04.

In that case both the README and the Dockerfile should be updated.

Steps to reproduce the problem:

cd /root
git clone \
  --depth=1 \
  --recursive \
  --branch v8.0.1.31 \
  https://github.com/ONLYOFFICE/build_tools.git \
  build_tools
# Ignore detached head warning
cd build_tools
mkdir out
docker build --tag onlyoffice-document-editors-builder .
docker run -e PRODUCT_VERSION=8.0.1 -e BUILD_NUMBER=31 -e NODE_ENV='production' -v $(pwd)/out:/build_tools/out onlyoffice-document-editors-builder /bin/bash -c 'cd tools/linux && python3 ./automate.py --branch=tags/v8.0.1.31'

build_tools base repo version: v8.0.1.31 Operating system: Ubuntu 16.04 Compiler version: Whatever Dockerfile installs.

adriangibanelbtactic avatar May 07 '24 15:05 adriangibanelbtactic

Hello @adriangibanelbtactic, you are right, i got the same error. I created ticket #68017

igwyd avatar May 15 '24 09:05 igwyd

build_tools base repo version: v8.0.1.50 Operating system: Ubuntu 16.04

similar issue at building v8

return f'.{gcs_file_name}{MIGRATION_TOGGLE_FILE_SUFFIX}' ^ SyntaxError: invalid syntax

Due to need of python3.8

shooding avatar May 16 '24 11:05 shooding

It's fixed at https://github.com/ONLYOFFICE/build_tools/commit/c9de5278ea01fa45863ec0aa0bf1c7beba781dc4 and will be released in next major release. @adriangibanelbtactic and @shooding thank you for the detailed report.

igwyd avatar May 17 '24 06:05 igwyd

It's fixed at c9de527 and will be released in next major release. @adriangibanelbtactic and @shooding thank you for the detailed report.

Thank you very much @igwyd !

BTW, don't forget about the https://github.com/ONLYOFFICE/document-server-package/ repo. It has some issues that need some attention too.

Thank you again.

adriangibanelbtactic avatar May 17 '24 06:05 adriangibanelbtactic

@igwyd release/v8.1.0 still gets error when building v8 and cipd

Cloning into '/core/Common/3dParty/v8_89/_gclient_v8_gdy3m7cc'...
remote: Sending approximately 789.65 MiB ...
remote: Counting objects: 7459, done
remote: Finding sources: 100% (3/3)
remote: Total 1098892 (delta 920986), reused 1098890 (delta 920986)
Receiving objects: 100% (1098892/1098892), 789.52 MiB | 9.11 MiB/s, done.
Resolving deltas: 100% (920986/920986), done.
Checking connectivity... done.

[0:03:50] Still working on:
[0:03:50]   v8
1>Syncing projects:   0% ( 0/ 2)
[0:03:52] Still working on:
[0:03:52]   v8
Syncing projects: 100% (38/38), done.

________ running 'python3 third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s test/wasm-spec-tests/tests.tar.gz.sha1' in '/core/Common/3dParty/v8_89/v8'
  File "third_party/depot_tools/download_from_google_storage.py", line 51
    return f'.{gcs_file_name}{MIGRATION_TOGGLE_FILE_SUFFIX}'
                                                           ^
SyntaxError: invalid syntax
Error: Command 'python3 third_party/depot_tools/download_from_google_storage.py --no_resume --no_auth -u --bucket v8-wasm-spec-tests -s test/wasm-spec-tests/tests.tar.gz.sha1' returned non-zero exit status 1 in /core/Common/3dParty/v8_89/v8
  File "third_party/depot_tools/download_from_google_storage.py", line 51
    return f'.{gcs_file_name}{MIGRATION_TOGGLE_FILE_SUFFIX}'
                                                           ^
SyntaxError: invalid syntax

Subprocess failed with return code 2.
./cipd: line 137: ./depot_tools/cipd_client_version.digests: No such file or directory
Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file.
error: unknown option `type'

shooding avatar May 20 '24 17:05 shooding

It's fixed at c9de527 and will be released in next major release. @adriangibanelbtactic and @shooding thank you for the detailed report.

Wait a moment... that commit has a python3.tar.gz binary. That's not right to add binaries to a source repo. And, well, I can stand the many third party binaries you download because we can inspect which urls you are getting them from... but... Why we should trust a random binary?

I mean... that python3.tar.gz's python3/bin/python3.10 binary might have a trojan after all.

There should be another fix that does not end up throwing a binary on the repo.

Thank you for considering an alternative.

adriangibanelbtactic avatar May 21 '24 07:05 adriangibanelbtactic

@shooding, I cheked branch release/v8.1.0 4 days ago in docker 16.04 this error is gone, but branch release/v8.1.0 still in development and other error may appear.

@adriangibanelbtactic I think it's about trust to this repo, you are you are an experienced user and you can check binary files or replase it. I will show to developers issues from https://github.com/ONLYOFFICE/document-server-package/, thank you.

igwyd avatar May 22 '24 04:05 igwyd

Struggling for several days

build for v7.5.1 [OK] serveral months ago. Host OS: Windows (x64) + make image from build_tools/Dockerfile (From Ubuntu:16.04)

build for v8.0.1 [FAILED] Host OS: macBook pro m1 (arm64) + make image from build_tools/Dockerfile (From Ubuntu:16.04) Host OS: Ubuntu 22.04 (x64) + make image from build_tools/Dockerfile (From Ubuntu:16.04) Host OS: Ubuntu 22.04 (x64) + make image from build_tools/Dockerfile (From Ubuntu:20.04)

Several common issues like:

  1. "RPC failed; curl 18 transfer closed with outstanding read data remaining container"
  2. missing header when building with clang++ (v19) but missing #include header, needs
  3. remained build files from previous failure needs to clean up e.g. "core/Common/3dParty/boost/boost_1_72_0"

After all those fails l tried to update Dockerfile and automate.py "--update", "0" and mount pre-cloned repos like sdkjs and web-apps into the container to boost build speed in case downloading them many times.

In the updated Dockerfile pre-installed openjdk-11-jdk openjdk-11-jdk-headless openjdk-11-jre openjdk-11-jre-headless. Download qt_source_5.9.9.tar.xz, unzip and mount as qt-everywhere-opensource-src-5.9.9.

Even though tried configure.py with "--update", "0", still get error 1 when building core common modules like boost or v8. Should i just find a Ubuntu 16 machine as host and run python3 ./automate.py or find a Windows machine as host + docker build ?

shooding avatar May 24 '24 07:05 shooding

I've managed to build for v8.0.1 [OK] Host OS: Ubuntu 22.04 (x64) + make image from build_tools/Dockerfile (From Ubuntu:16.04)

with several speed up techniques allow you to continue the build. Here's the Dockerfile that pre-install openjdk. You can omit this if network is very stable. Also change sources.list to the one closet helps.

FROM ubuntu:16.04

ENV TZ=Etc/UTC
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# Update the sources.list to use the mirror closet to you
RUN sed -i 's|http://archive.ubuntu.com/ubuntu/|http://free.nchc.org.tw/ubuntu/|g' /etc/apt/sources.list

RUN 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 \
                                    openssh-client

RUN rm /usr/bin/python && ln -s /usr/bin/python2 /usr/bin/python

VOLUME ["/work"]
WORKDIR /work

# Set the default command
CMD ["bash"]
export VERSION=8.0.1
cd build_tools && docker build -t documentserver-develop:$VERSION .

Note that i mounted ssh key into container so that we can force using ssh protocol to avoid "RPC failed; curl 18 transfer closed with outstanding read data remaining container" with unstable network (e.g. WiFi congestion). Note that in Dockerfile, using a volume /work to share the output with host machine, and you can edit/delete repos either within the container or host machine. This is helpful because sometimes you'll need to rm -rf core/Common/3dParty/boost/boost_1_72_0 to clean up intermediate build.

docker run -it --platform=linux/amd64 -p 80:80 \
-e PRODUCT_VERSION=$VERSION \
-e BUILD_NUMBER=50 \
-v ~/.ssh:/root/.ssh \
-v $WORKFOLDER:/work \
documentserver-develop:$VERSION

You'll enter the container then copy & paste these command to have smooth cloning process.

git config --global url."[email protected]:".insteadOf "https://github.com/" && ssh-keyscan github.com >> /root/.ssh/known_hosts && eval "$(ssh-agent -s)" && ssh-add /root/.ssh/id_rsa

If you github ssh key is encrypted, here you enter password. In my senario, i just want to change some stuff in sdjks and web-apps, therefore building server is enough, but still want consistency so pre-cloned these repos and checkout to the correct tag e.g. 8.0.1.50 accordinly, then mount to /work volume before building.

# To share with host machine. Mount -v /path/from/host:/work
# ├── build_tools
# ├── core
# ├── core-fonts
# ├── dictionaries
# ├── qt-everywhere-opensource-src-5.9.9 (pre download and tar -xf )
# ├── sdkjs
# ├── server
# ├── web-apps
# ├── document-server-integration
# ├── ...

You can check the function def get_repositories() in scripts/base.py and comment out those repos pre-cloned. Like:

def get_repositories():
  result = {}
  # result["core"] = [False, False]
  # result["sdkjs"] = [False, False]
  result.update(get_sdkjs_addons())
  result["onlyoffice.github.io"] = [False, False]
  # result["web-apps"] = [False, False]
  result.update(get_web_apps_addons())
  # result["dictionaries"] = [False, False]
  # result["core-fonts"] = [False, False]

Why need to comment out manually? while def update_repositories(repositories) should've done the git update ? This is because core repo is a submodule of DocumentServer and the building script will check it's parent and error: fatal: Not a git repository: ../.git/modules/core

Then i ran with

cd build_tools/tools/linux/ && python3 ./automate.py server

Build [OK]

shooding avatar May 27 '24 06:05 shooding

Sorry, we forgot to mention that issue was fixed. I close this issue. Feel free to comment or reopen it if you got further questions.

Rita-Bubnova avatar Sep 13 '24 09:09 Rita-Bubnova

I've been trying to build onlyoffice bu just cant find a branch where this is posiible. You say this is fixed, on which branch/tag/master can you build onlyoffice according to the build tools instruction with the supplied Dockerfile? Ubunut16.04 doesn't have python 3.6 so that can't be used anymore but that is still in your files..

Nocodemon avatar Sep 16 '24 09:09 Nocodemon

Hello @Nocodemon it was fixed in th v8.1.0, python3.6 added to the build_tools. You can build it from the master branch using docker for example.

igwyd avatar Sep 16 '24 10:09 igwyd

I don't think this is true, I just did now and the problem with depot_tools is still there.

/cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file. error: unknown option `type' usage: git config []

Config file location --global use global config file --system use system config file --local use repository config file -f, --file use given config file --blob read config from given blob object

Action --get get value: name [value-regex] --get-all get all values: key [value-regex] --get-regexp get values for regexp: name-regex [value-regex] --get-urlmatch get value specific for the URL: section[.var] URL --replace-all replace all matching variables: name value [value_regex] --add add a new variable: name value --unset remove a variable: name [value-regex] --unset-all remove all matches: name [value-regex] --rename-section rename section: old-name new-name --remove-section remove a section: name -l, --list list all -e, --edit open an editor --get-color find the color configured: slot [default] --get-colorbool find the color setting: slot [stdout-is-tty]

Type --bool value is "true" or "false" --int value is decimal number --bool-or-int value is --bool or --int --path value is a path (file or directory name)

Other -z, --null terminate values with NUL byte --name-only show variable names only --includes respect include directives on lookup

v8 (ERROR)

[0:00:00] Started.

Traceback (most recent call last): File "/core/Common/3dParty/v8_89/depot_tools/metrics.py", line 302, in print_notice_and_exit yield File "/core/Common/3dParty/v8_89/./depot_tools/gclient.py", line 4638, in sys.exit(main(sys.argv[1:])) ^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/./depot_tools/gclient.py", line 4624, in main return dispatcher.execute(OptionParser(), argv) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/depot_tools/subcommand.py", line 254, in execute return command(parser, args[1:]) ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/./depot_tools/gclient.py", line 3977, in CMDsync ret = client.RunOnDeps('update', args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/./depot_tools/gclient.py", line 2436, in RunOnDeps work_queue.flush(revision_overrides, File "/core/Common/3dParty/v8_89/depot_tools/gclient_utils.py", line 1026, in flush reraise(e[0], e[1], e[2]) File "/core/Common/3dParty/v8_89/depot_tools/gclient_utils.py", line 53, in reraise raise value File "/core/Common/3dParty/v8_89/depot_tools/gclient_utils.py", line 1105, in run self.item.run(*self.args, **self.kwargs) File "/core/Common/3dParty/v8_89/./depot_tools/gclient.py", line 1251, in run self._got_revision = self._used_scm.RunCommand( ^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/depot_tools/gclient_scm.py", line 137, in RunCommand return getattr(self, command)(options, args, file_list) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/core/Common/3dParty/v8_89/depot_tools/gclient_scm.py", line 664, in wrapper return_val = f(*args) ^^^^^^^^ File "/core/Common/3dParty/v8_89/depot_tools/gclient_scm.py", line 866, in update strp_current_url = current_url[:-4] if current_url.endswith( ^^^^^^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'endswith'

Nocodemon avatar Sep 17 '24 13:09 Nocodemon

Hello @Nocodemon it was fixed in th v8.1.0, python3.6 added to the build_tools. You can build it from the master branch using docker for example.

Yes i was using docker (documentserver-develop tag) to build, which is from ubuntu:16.04 and the environment is more fixed. I manged to build v8.1.3.3 today with ./automate.py server and output to folder build_tools/out/linux_64/onlyoffice/documentserver.

shooding avatar Sep 19 '24 08:09 shooding

@shooding you mind sharing exactly how you do it? I'm on Ubuntu 20.04, please share how you git checkout and then the build and run code. Because it feels like I've tried every branch and never gets through building v8

Nocodemon avatar Sep 19 '24 12:09 Nocodemon

I tried to build on Ubuntu 20.04 before and will encounter python version issue and packages installed via apt-get didn't fully matches with Ubuntu 16.04. Therefore i am using docker to build it. You can clone the build_tools git and read through README.md under develop folder.

docker build the builder image (16.04) first then run container to build it.

Make sure your network speed stable and fast because many 3rd party repo are cloned during the build.

Follow instructions until ./automate.py server

I think the largest steps are building for qt 5.9.9 and v8

Nocodemon @.***> 於 2024年9月19日 週四 20:06 寫道:

@shooding https://github.com/shooding you mind sharing exactly how you do it? I'm on Ubuntu 20.04, please share how you git checkout and then the build and run code. Because it feels like I've tried every branch and never gets through building v8

— Reply to this email directly, view it on GitHub https://github.com/ONLYOFFICE/build_tools/issues/807#issuecomment-2360809910, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQKSNWWH4KS7GAHKHGHOU3ZXK45NAVCNFSM6AAAAABHLJAYWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNRQHAYDSOJRGA . You are receiving this because you were mentioned.Message ID: @.***>

shooding avatar Sep 19 '24 17:09 shooding

ok, so I reinstalled docker according to the stuff in develop and set it up so it doesn't need to run with sudo. Master branch still fails. Running: git config diff.ignoreSubmodules dirty ./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file. error: unknown option `type' usage: git config []

You say you run 8.1.3.3 do you just do git checkout 8.1.3.3 and then run it with

mkdir out
docker build --tag onlyoffice-document-editors-builder .
docker run -v $PWD/out:/build_tools/out onlyoffice-document-editors-builder

Nocodemon avatar Sep 19 '24 21:09 Nocodemon

Tried checking out the develop branch and 8.1.1.3 but that also generates errors and stops.

`In file included from ../../src/base/logging.h:21: ../../src/base/template-utils.h:78:15: error: no template named 'tuple_size_v' in namespace 'std'; did you mean 'tuple_size'? 78 | N <= std::tuple_size_v<std::decay_t<Tuple>>; | ~~~~~^~~~~~~~~~~~ | tuple_size /usr/lib/gcc/x86_64-linux-gnu/5/../../../../include/c++/5/tuple:798:12: note: 'tuple_size' declared here 798 | struct tuple_size; | ^ In file included from ../../src/base/ieee754.cc:22: In file included from ../../src/base/macros.h:13: In file included from ../../src/base/logging.h:21: ../../src/base/template-utils.h:78:48: error: expected '(' for function-style cast or type construction 78 | N <= std::tuple_size_v<std::decay_t<Tuple>>; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ../../src/base/template-utils.h:130:38: error: no template named 'tuple_size_v' in namespace 'std'; did you mean 'tuple_size'? 130 | constexpr size_t total_size = std::tuple_size_v<std::decay_t<Tuple>>; | ~~~~~^~~~~~~~~~~~ | tuple_size /usr/lib/gcc/x86_64-linux-gnu/5/../../../../include/c++/5/tuple:798:12: note: 'tuple_size' declared here 798 | struct tuple_size; | ^ In file included from ../../src/base/ieee754.cc:22: In file included from ../../src/base/macros.h:13: In file included from ../../src/base/logging.h:21: ../../src/base/template-utils.h:130:71: error: expected '(' for function-style cast or type construction 130 | constexpr size_t total_size = std::tuple_size_v<std::decay_t<Tuple>>; | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ ../../src/base/template-utils.h:145:38: error: no template named 'tuple_size_v' in namespace 'std'; did you mean 'tuple_size'? 145 | constexpr size_t total_size = std::tuple_size_v<std::decay_t<Tuple>>; | ~~~~~^~~~~~~~~~~~ | tuple_size /usr/lib/gcc/x86_64-linux-gnu/5/../../../../include/c++/5/tuple:798:12: note: 'tuple_size' declared here 798 | struct tuple_size; | ^

I'll try and check out 8.1.3.3 from the master branch and build that as well

Nocodemon avatar Sep 20 '24 16:09 Nocodemon

master 8.1.1.3 also has the depot_tools error

running: git config diff.ignoreSubmodules dirty
./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory
Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file.
error: unknown option `type'

Nocodemon avatar Sep 20 '24 18:09 Nocodemon

master 8.1.1.3 also has the depot_tools error

running: git config diff.ignoreSubmodules dirty
./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory
Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file.
error: unknown option `type'

I've the same issue, did you mange to get it working?

karz94 avatar Sep 22 '24 14:09 karz94

master 8.1.1.3 also has the depot_tools error

running: git config diff.ignoreSubmodules dirty
./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory
Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file.
error: unknown option `type'

Platform linux-amd64 is not supported by the CIPD client

Some advice

Why?

  • My first suspicion is that when using Docker-CE you build by default on a linux_64 system but if you use Docker-alike-software that it's not an actual Docker-CE (such as podman or others) you get linux_amd64 by default.
  • My second suspicion is that building from an actual amd64 machine gives this problem. I am personally using an VPS for that where I use docker on it.
  • My third suspicion is that newest versions of Docker-CE now default to linux_amd64 system instead of linux_64 system. So Dockerfile file might be needed to be rewritten in such a way that it enforces a linux_64 container.

It might be python after all

My first encounter to this error was related to python3 not being installed which they might have fixed by adding a binary of python3.

It might that that enforced binary does not work for your system properly because of... how it was built in the first place.

Feedback

Please tell us what you find out. That way onlyoffice community will know how to address these Platform linux-amd64 is not supported by the CIPD client bootstrap errors and put other similar problem submitters on the right path.

adriangibanelbtactic avatar Sep 23 '24 08:09 adriangibanelbtactic

@adriangibanelbtactic i did try and error until it works. Some commits may not changed anything. But i think the last thing that I did is to use ubuntu 22.04 image.

jefriabdullah avatar Sep 23 '24 09:09 jefriabdullah

@LabanPheidias maybe you can run on Docker with ubuntu 22.04 image? That is what working for me.

https://github.com/ONLYOFFICE/Docker-DocumentServer/compare/master...jefriabdullah:Docker-DocumentServer:master

Edit the file appropriately to build the docker image, some of the links refer to my internal docker registry.

jefriabdullah avatar Sep 24 '24 08:09 jefriabdullah

Sorry I can't run docker right now in our environment.

LabanPheidias avatar Sep 24 '24 08:09 LabanPheidias

The previous error was me messing upp the config file, but now I ran inte another snag, Everything runs and starts now, But when I connect nextcloud to onlyoffice the converter service dies, whit this error
nodeJS - stderr:/local_disk/documentserver/server/FileConverter/bin/x2t: /lib64/libm.so.6: version `GLIBC_2.35' n ot found (required by /lib64/libgraphics.so) Seems like you can't build on ubuntu 22 if you wanna run it on RHEL that supports only 2.34

LabanPheidias avatar Sep 24 '24 13:09 LabanPheidias

Did a test with building @jefriabdullah version with ubuntu 20.04 and it doesn't work. You get an errror when building v8 with g++ saying c++20 or later required. I have tried this before whit upgrading from 9.4 to 10 but that didn't work. will try with 11 since that is standard on v22

LabanPheidias avatar Sep 25 '24 07:09 LabanPheidias

Got stuck at this again running: git config diff.ignoreSubmodules dirty ./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file. error: unknown option ``type'

LabanPheidias avatar Sep 25 '24 13:09 LabanPheidias

to be honest, i always use official recommended way (docker in this case) to build large open-source projects. My local machine cannot always keep up with official's update including python version or 3rd party packages. I've tried a VM with Ubuntu22.04 as well which uses python3.10 as default, but 3rd party packages built with python3.10 ~ 3.12 has large differences.

LabanPheidias @.***> 於 2024年9月25日 週三 下午9:17寫道:

Got stuck at this again ``` running: git config diff.ignoreSubmodules dirty ./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the *.digests file. error: unknown option `type'

— Reply to this email directly, view it on GitHub https://github.com/ONLYOFFICE/build_tools/issues/807#issuecomment-2374063251, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQKSNXV3OVUOEGT3FNO5XLZYKZXVAVCNFSM6AAAAABHLJAYWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNZUGA3DGMRVGE . You are receiving this because you were mentioned.Message ID: @.***>

shooding avatar Sep 26 '24 06:09 shooding

to be honest, i always use official recommended way (docker in this case) to build large open-source projects. My local machine cannot always keep up with official's update including python version or 3rd party packages. I've tried a VM with Ubuntu22.04 as well which uses python3.10 as default, but 3rd party packages built with python3.10 ~ 3.12 has large differences. LabanPheidias @.*> 於 2024年9月25日 週三 下午9:17寫道: Got stuck at this again ``` running: git config diff.ignoreSubmodules dirty ./cipd: line 143: ./depot_tools/cipd_client_version.digests: No such file or directory Platform linux-amd64 is not supported by the CIPD client bootstrap: there's no pinned SHA256 hash for it in the .digests file. error: unknown option `type' — Reply to this email directly, view it on GitHub <#807 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACQKSNXV3OVUOEGT3FNO5XLZYKZXVAVCNFSM6AAAAABHLJAYWOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNZUGA3DGMRVGE . You are receiving this because you were mentioned.Message ID: @.>

My no docker reply was in regards to running the precompiled Docker version. I'm building in Docker and that is right now only possible with a Ubuntu 22 source wich gives me binaries that won't run on rhel 9.4. I saw references to changing out v8 to a version that is buildable on Ubuntu 20.04 . Anyone know hot to do that? And shouldn't onlyoffice open this again I haven't seen anyone manage to build according to the suggested route.

Nocodemon avatar Sep 26 '24 07:09 Nocodemon

I have a completely different error than you. I have tried switching to Ubuntu 20.04 and 22.04, and I’ve also made changes to the configuration, such as switching from the Node.js 16.x repo to the 20.x repo. I have also confirmed that the Node.js version is above 16.

However, during the compilation, when we are near the final step, it halts with the error: 'Installed Node.js version: 10.19. Node.js version cannot be less than 16.'

So, it seems that somewhere during the compilation, the Node.js version changes?

This is the error I am facing:

In file included from embed/v8/v8_MemoryStreamEmbed.cpp:5:
embed/v8/../../js_internal/v8/v8_base.h: In member function ‘void CV8Initializer::Dispose()’:
embed/v8/../../js_internal/v8/v8_base.h:160:11: error: ‘ShutdownPlatform’ is not a member of ‘v8::V8’
  160 |   v8::V8::ShutdownPlatform();
      |           ^~~~~~~~~~~~~~~~
In file included from embed/v8/v8_NativeControlEmbed.cpp:5:
embed/v8/../../js_internal/v8/v8_base.h: In member function ‘void CV8Initializer::Dispose()’:
embed/v8/../../js_internal/v8/v8_base.h:160:11: error: ‘ShutdownPlatform’ is not a member of ‘v8::V8’
  160 |   v8::V8::ShutdownPlatform();
      |           ^~~~~~~~~~~~~~~~
In file included from js_internal/v8/inspector/inspector_pool.cpp:3:
js_internal/v8/inspector/../v8_base.h: In member function ‘void CV8Initializer::Dispose()’:
js_internal/v8/inspector/../v8_base.h:160:11: error: ‘ShutdownPlatform’ is not a member of ‘v8::V8’
  160 |   v8::V8::ShutdownPlatform();
      |           ^~~~~~~~~~~~~~~~
In file included from embed/v8/v8_GraphicsEmbed.cpp:5:
embed/v8/../../js_internal/v8/v8_base.h: In member function ‘void CV8Initializer::Dispose()’:
embed/v8/../../js_internal/v8/v8_base.h:160:11: error: ‘ShutdownPlatform’ is not a member of ‘v8::V8’
  160 |   v8::V8::ShutdownPlatform();
      |           ^~~~~~~~~~~~~~~~
In file included from embed/v8/v8_TextMeasurerEmbed.cpp:5:
embed/v8/../../js_internal/v8/v8_base.h: In member function ‘void CV8Initializer::Dispose()’:
embed/v8/../../js_internal/v8/v8_base.h:160:11: error: ‘ShutdownPlatform’ is not a member of ‘v8::V8’
  160 |   v8::V8::ShutdownPlatform();
      |           ^~~~~~~~~~~~~~~~
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:7432: core_build/linux_64/release/obj/js_internal/v8/inspector/utils.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:2912: core_build/linux_64/release/obj/js_internal/v8/v8_base.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:16562: core_build/linux_64/release/obj/embed/v8/v8_NativeBuilderDocumentEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:12025: core_build/linux_64/release/obj/embed/v8/v8_HashEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:19584: core_build/linux_64/release/obj/embed/v8/v8_PointerEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:15053: core_build/linux_64/release/obj/embed/v8/v8_NativeBuilderEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:5925: core_build/linux_64/release/obj/js_internal/v8/inspector/inspector.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:4418: core_build/linux_64/release/obj/js_internal/v8/inspector/inspector_pool.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:22605: core_build/linux_64/release/obj/embed/v8/v8_ZipEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:18077: core_build/linux_64/release/obj/embed/v8/v8_NativeControlEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:13544: core_build/linux_64/release/obj/embed/v8/v8_MemoryStreamEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:21091: core_build/linux_64/release/obj/embed/v8/v8_TextMeasurerEmbed.o] Error 1
make: *** [/core/DesktopEditor/doctrenderer/Makefile.linux_64:10516: core_build/linux_64/release/obj/embed/v8/v8_GraphicsEmbed.o] Error 1
ktopEditor/doctrenderer/app_builder/docbuilder.pro', u'[win,linux,mac]core/DesktopEditor/pluginsmanager/pluginsmanager.pro', u'[win,linux,mac,!linux_arm64]core/OfficeCryptReader/ooxml_crypt/ooxml_crypt.pro', u'[win,linux,mac]core/Common/3dParty/hunspell/qt/hunspell.pro', u'[win,linux,mac,!no_tests]core/DesktopEditor/vboxtester/vboxtester.pro', u'[win,linux,mac,!no_tests]core/Test/Applications/StandardTester/standardtester.pro', u'[win,linux,mac,!no_tests]core/Test/Applications/x2tTester/x2ttester.pro', u'[win,linux,mac,!no_tests]core/Test/Applications/MetafileTester/MetafileTester.pro', u'[win,linux,mac,!no_tests]core/Common/3dParty/hunspell/test/test.pro']
Error (make): 2
install dependencies...
Installed Node.js version: 10.19
Node.js version cannot be less 16
``

razerrazer avatar Sep 26 '24 11:09 razerrazer