Closed cxxly closed 8 years ago
There's a Dockerfile in the contrib directory, which ought to work. It's based on an Ubuntu 14.04 userspace; we've also recently tested 16.04 and found it to work.
Building on CentOS is likely tricky -- last time we tried, many dependencies had to be compiled from because the CentOS packages were way outdated. We're happy to help get a native CentOS build to work and merge contributed documentation for it, though.
Thanks @ms705 There are some errors when I build dockerfile:
...
Scanning dependencies of target hello_world
[ 63%] Building CXX object src/CMakeFiles/examples/hello_world.dir/examples/hello_world/hello_world.cc.o
[ 64%] Building CXX object src/CMakeFiles/examples/hello_world.dir/engine/task_lib.cc.o
Linking CXX executable examples/hello_world
/usr/bin/ld: cannot open output file examples/hello_world: Is a directory
collect2: error: ld returned 1 exit status
make[2]: *** [src/examples/hello_world] Error 1
make[1]: *** [src/CMakeFiles/examples/hello_world.dir/all] Error 2
make: *** [all] Error 2
The command '/bin/sh -c mkdir /var/log/firmament && cd /firmament && cmake . && make' returned a non-zero code: 2
Hi @cxxly,
Thanks for reporting -- we'll look into this. Seems like there's a name clash between a CMake target and a directory, although it's strange that we didn't see this in our testing environment.
As a workaround, you can remove the examples
directory from the CMake targets and re-try.
This was due to a name clash between CMake executable targets and subdirectories, and only happened when doing an in-tree build (as the Dockerfile does).
Fix under review in 282138.
Fix merged, Docker build now passes.
I try to install firmament on centos7 and ubuntu14.04, but finally failed. It requires so many dependencies which must be installed one by one. Is there any easily solution(such add a dockerfile) or more detailed description about how to install firmament.