google-deepmind/lab

Build DeepMind Lab without SDL Library

jw447 opened this issue · 5 comments

jw447 commented

Hi,

I'm trying to build the Lab without SDL library. I'm wondering if it is at all possible. I'm trying to run the Lab in a command-line-only environment so no graphics are available.

Thanks,

I think if you only build the relevant targets that don't depend on SDL (e.g. the Python module), you shouldn't need SDL.

jw447 commented

Thanks. Does that mean I can just get rid of the SDL-related targets in the BUILD file?

such as:
https://github.com/deepmind/lab/blob/2f21c07371e0f2a2c8e6a039b330c44b97d418ff/BUILD#L891

Well, you could, sure, but why does it even matter? Just don't build the targets you don't want to build. You only need the dependencies when they're needed, so as long as you don't build anything that needs SDL, nothing requires you to have SDL installed.

jw447 commented

I'm not very familiar with the Bazel build system. Could you please direct me on how to build the selected target (python module) with minimal change to the BUILD file?

It looks like if you run lab$ bazel build -c opt //:deepmind_lab.so that should build a "headless" version with no SDL. Are you getting an SDL build error? You can also turn off rendering if you can build and the client starts.