google-deepmind / hanabi-learning-environment

hanabi_learning_environment is a research platform for Hanabi experiments.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Error running /usr/bin/ranlib: vfork

perng opened this issue · comments

commented

I got the following error when 'make'

$ make
Scanning dependencies of target hanabi
[ 7%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_card.cc.o
[ 14%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_game.cc.o
[ 21%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_hand.cc.o
[ 28%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_history_item.cc.o
[ 35%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_move.cc.o
[ 42%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_observation.cc.o
[ 50%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/hanabi_state.cc.o
[ 57%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/util.cc.o
[ 64%] Building CXX object hanabi_lib/CMakeFiles/hanabi.dir/canonical_encoders.cc.o
[ 71%] Linking CXX static library libhanabi.a
Error running /usr/bin/ranlib: vfork
hanabi_lib/CMakeFiles/hanabi.dir/build.make:302: recipe for target 'hanabi_lib/libhanabi.a' failed
make[2]: *** [hanabi_lib/libhanabi.a] Error 1
make[2]: *** Deleting file 'hanabi_lib/libhanabi.a'
CMakeFiles/Makefile2:159: recipe for target 'hanabi_lib/CMakeFiles/hanabi.dir/all' failed
make[1]: *** [hanabi_lib/CMakeFiles/hanabi.dir/all] Error 2
Makefile:83: recipe for target 'all' failed
make: *** [all] Error 2

This looks like a system problem: either /usr/bin/ranlib is missing (I hope not!) or the machine is out of resources (memory, available processes, file descriptors, ...) to start a new process. I'm not sure I can help with that -- hopefully someone else might have some suggestions.

As a low-probability attempt at a workaround (maybe building the shared library requires less resources?) you might try changing the first line of hanabi_lib/CMakeLists.txt from
add_library (hanabi hanabi_card.cc hanabi_game.cc hanabi_hand.cc hanabi_history_item.cc hanabi_move.cc hanabi_observation.cc hanabi_state.cc util.cc canonical_encoders.cc)
to
add_library (hanabi SHARED hanabi_card.cc hanabi_game.cc hanabi_hand.cc hanabi_history_item.cc hanabi_move.cc hanabi_observation.cc hanabi_state.cc util.cc canonical_encoders.cc)
and re-configure / re-build
cmake .; make

commented

Neil, I think you're right. I tried it on another computer without any problem. Thank you!