Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docker compose fails with 'Failed to run install_mvfst .' #10291

Open
jaystarshot opened this issue Jun 24, 2024 · 9 comments
Open

Docker compose fails with 'Failed to run install_mvfst .' #10291

jaystarshot opened this issue Jun 24, 2024 · 9 comments
Labels
build triage Newly created issue that needs attention.

Comments

@jaystarshot
Copy link
Contributor

jaystarshot commented Jun 24, 2024

Problem description

Ran docker-compose build ubuntu-cpp but ran into errors like

Is there an already published docker image which works?

System information

docker --version
Docker version 26.1.4, build 5650f9b

arm64-apple-darwin23.4.0

CMake log

1016.8 /mvfst/quic/common/CircularDeque-inl.h: In instantiation of ‘quic::CircularDeque<T>::iterator quic::CircularDeque<T>::emplace(quic::CircularDeque<T>::const_iterator, Args&& ...) [with Args = {const quic::WriteBufferMeta&}; T = quic::WriteBufferMeta; quic::CircularDeque<T>::iterator = quic::CircularDeque<quic::WriteBufferMeta>::CircularDequeIterator<quic::WriteBufferMeta>; quic::CircularDeque<T>::const_iterator = quic::CircularDeque<quic::WriteBufferMeta>::CircularDequeIterator<quic::WriteBufferMeta>]’:
1016.8 /mvfst/quic/common/CircularDeque-inl.h:323:17:   required from ‘quic::CircularDeque<T>::iterator quic::CircularDeque<T>::insert(quic::CircularDeque<T>::const_iterator, const T&) [with T = quic::WriteBufferMeta; quic::CircularDeque<T>::iterator = quic::CircularDeque<quic::WriteBufferMeta>::CircularDequeIterator<quic::WriteBufferMeta>; quic::CircularDeque<T>::const_iterator = quic::CircularDeque<quic::WriteBufferMeta>::CircularDequeIterator<quic::WriteBufferMeta>]’
1016.8 /mvfst/quic/state/StreamData.h:513:26:   required from here
1016.8 /mvfst/quic/common/CircularDeque-inl.h:289:11: warning: operation on ‘index’ may be undefined [-Wsequence-point]
1016.8 ninja: build stopped: subcommand failed.
1016.9 + sudo --preserve-env cmake --install _build
1017.1 -- Install configuration: "Release"
1017.1 -- Installing: /usr/local/lib/cmake/mvfst/mvfst-targets.cmake
1017.1 -- Installing: /usr/local/lib/cmake/mvfst/mvfst-targets-release.cmake
1017.1 -- Installing: /usr/local/lib/cmake/mvfst/mvfst-config.cmake
1017.1 -- Installing: /usr/local/include/quic/QuicConstants.h
1017.1 -- Installing: /usr/local/lib/libmvfst_constants.a
1017.1 -- Installing: /usr/local/include/quic/QuicException.h
1017.1 -- Installing: /usr/local/lib/libmvfst_exception.a
1017.1 -- Installing: /usr/local/include/quic/api/IoBufQuicBatch.h
1017.1 -- Installing: /usr/local/include/quic/api/LoopDetectorCallback.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicBatchWriter.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicBatchWriterFactory.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicGsoBatchWriters.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicPacketScheduler.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicSocket.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicStreamAsyncTransport.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicTransportBase.h
1017.1 -- Installing: /usr/local/include/quic/api/QuicTransportFunctions.h
1017.1 CMake Error at _build/quic/api/cmake_install.cmake:86 (file):
1017.1   file INSTALL cannot find "/mvfst/_build/quic/api/libmvfst_transport.a": No
1017.1   such file or directory.
1017.1 Call Stack (most recent call first):
1017.1   _build/quic/cmake_install.cmake:71 (include)
1017.1   _build/cmake_install.cmake:74 (include)
1017.1 
1017.1 
1017.1 
1017.1 real	1m10.170s
1017.1 user	10m47.899s
1017.1 sys	0m26.077s
1017.1 + echo 'Failed to run install_mvfst .'
1017.1 Failed to run install_mvfst .
1017.1 + exit 1
@jaystarshot jaystarshot added build triage Newly created issue that needs attention. labels Jun 24, 2024
@majetideepak
Copy link
Collaborator

majetideepak commented Jun 26, 2024

Is there an already published docker image which works?

We have published images that are used in CI. ghcr.io/facebookincubator/velox-dev:amd64-ubuntu-22.04-avx

@majetideepak
Copy link
Collaborator

majetideepak commented Jun 26, 2024

A recent ubuntu docker image build was successful https://github.com/facebookincubator/velox/actions/runs/9672757599/job/26685597501

I see arm64-apple-darwin23.4.0 in your system information. Are you building using qemu for x86_64 on apple arm64?
Can you try on a x86_64 machine?

@jaystarshot
Copy link
Contributor Author

Nope, I just built on arm, expecting the docker compose to pick that up and choose base images accordingly. Is the current docker compose only supported on x86?

@majetideepak
Copy link
Collaborator

Yes, docker compose for ubuntu and centos only support x86. Are there Ubuntu and Centos base images for apple arm?

@majetideepak
Copy link
Collaborator

I see that Ubuntu has an image for arm https://ubuntu.com/download/server/arm. Looks like the setup script needs some changes.

@majetideepak
Copy link
Collaborator

I hit this while building fbthrift and not mvfst. The issue is that the build failed ninja: build stopped: subcommand failed.. For me, the failure was due to c++: fatal error: Killed signal terminated program cc1plus from insufficient memory.

@jaystarshot
Copy link
Contributor Author

I think I had seen the insufficient memory before and setting a limit on the threads worked -e NUM_THREADS=2. But the the error that I saw was different

@majetideepak
Copy link
Collaborator

I was able to build Prestissimo (which includes Velox) with some changes.
#10346

@jaystarshot
Copy link
Contributor Author

Wow nice

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build triage Newly created issue that needs attention.
Projects
None yet
Development

No branches or pull requests

2 participants