facebookarchive / bistro

Bistro is a flexible distributed scheduler, a high-performance framework supporting multiple paradigms while retaining ease of configuration, management, and monitoring.
https://bistro.io
MIT License
1.03k stars 158 forks source link

Build failure #24

Closed ribaptista closed 6 years ago

ribaptista commented 6 years ago

Hello

Thanks for this project - Bistro seems to be an awesome tool!

Trying to build with following commands: ./fbcode_builder/make_docker_context.py --os-image ubuntu:16.04 --gcc-version 5 then into dir returned by cmd above: docker build .

Got following error:

Step 119/120 : RUN make -j '1'
 ---> Running in 0a59e2acdb6b
Scanning dependencies of target bistro_lib
[  0%] Building CXX object CMakeFiles/bistro_lib.dir/Bistro.cpp.o
Linking CXX static library libbistro_lib.a
[  0%] Built target bistro_lib
Scanning dependencies of target gtest
[  0%] Building CXX object cmake/deps/gtest-1.7.0/CMakeFiles/gtest.dir/src/gtest-all.cc.o
Linking CXX static library libgtest.a
[  0%] Built target gtest
Scanning dependencies of target gtest_main
[  1%] Building CXX object cmake/deps/gtest-1.7.0/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o
Linking CXX static library libgtest_main.a
[  1%] Built target gtest_main
Scanning dependencies of target subprocess_with_timeout
[  2%] Building CXX object processes/CMakeFiles/subprocess_with_timeout.dir/SubprocessOutputWithTimeout.cpp.o
Linking CXX static library libsubprocess_with_timeout.a
[  2%] Built target subprocess_with_timeout
Scanning dependencies of target processes
[  3%] Building CXX object processes/CMakeFiles/processes.dir/AsyncCGroupReaper.cpp.o
[  3%] Building CXX object processes/CMakeFiles/processes.dir/AsyncReadPipeRateLimiter.cpp.o
[  4%] Building CXX object processes/CMakeFiles/processes.dir/CGroupSetup.cpp.o
[  4%] Building CXX object processes/CMakeFiles/processes.dir/TaskSubprocessQueue.cpp.o
Linking CXX static library libprocesses.a
[  4%] Built target processes
Scanning dependencies of target test_async_read_pipe
[  4%] Building CXX object processes/tests/CMakeFiles/test_async_read_pipe.dir/test_async_read_pipe.cpp.o
Linking CXX executable test_async_read_pipe
[  4%] Built target test_async_read_pipe
Scanning dependencies of target test_async_read_pipe_rate_limiter
[  5%] Building CXX object processes/tests/CMakeFiles/test_async_read_pipe_rate_limiter.dir/test_async_read_pipe_rate_limiter.cpp.o
Linking CXX executable test_async_read_pipe_rate_limiter
CMakeFiles/test_async_read_pipe_rate_limiter.dir/test_async_read_pipe_rate_limiter.cpp.o: In function `facebook::bistro::AsyncReadPipeRateLimiter::AsyncReadPipeRateLimiter(folly::EventBase*, unsigned int, long, std::vector<std::shared_ptr<facebook::bistro::AsyncReadPipe>, std::allocator<std::shared_ptr<facebook::bistro::AsyncReadPipe> > >)':
/home/bistro/bistro/../../bistro/bistro/processes/AsyncReadPipeRateLimiter.h:35: undefined reference to `vtable for facebook::bistro::AsyncReadPipeRateLimiter'
CMakeFiles/test_async_read_pipe_rate_limiter.dir/test_async_read_pipe_rate_limiter.cpp.o: In function `_ZZN4PipeC4EPKcPN5folly9EventBaseElNS2_5RangeIS1_EEENKUlPN8facebook6bistro13AsyncReadPipeES6_E_clESA_S6_':
/home/bistro/bistro/processes/tests/test_async_read_pipe_rate_limiter.cpp:45: undefined reference to `facebook::bistro::AsyncReadPipeRateLimiter::reduceQuotaBy(long)'
collect2: error: ld returned 1 exit status
make[2]: *** [processes/tests/test_async_read_pipe_rate_limiter] Error 1
make[1]: *** [processes/tests/CMakeFiles/test_async_read_pipe_rate_limiter.dir/all] Error 2
make: *** [all] Error 2
The command '/bin/bash -c make -j '1'' returned a non-zero code: 2
snarkmaster commented 6 years ago

@ribaptista, is this still failing for you? I did a bunch of work to green up the open-source build in the last month or so. You'll see a bunch of green on Travis. The build works fine in the Ubuntu VMs I've tried it on.

snarkmaster commented 6 years ago

Having read your other comments, I'll close this out. But please open a new issue if we can help!