action_env not used in all compilations done by TensorFlow 2.3

Skip to first unread message

Alexander Grund

Sep 8, 2020, 4:15:17 AM9/8/20
to SIG Build

I'm kindly requesting guidance on an issue I have with building TF 2.3.0 with TF_SYSTEM_LIBS.

Basically the problem is that the dependencies are not installed into /usr or similar but into (say) /opt/<name>_<version>. I hence need to set CPATH so the compiler can find the header files and pass that to Bazel/TF via `--action_env`. This worked well for TF 2.1 and 2.2 but now fails with 2.3

Inspecting the output I see that some C++ files are not compiled with the action_envs passed but with an (almost) empty environment. For example the "tensorflow/core/platform/default/" is compiled using an empty env but com_google_absl works with all my action_env vars present. I can't tell why, both are added via `cc_library`.

I opened an issue at, but maybe someone here has an idea what is going on. I tried both Bazel 3.1 and 3.4.1 but as TF 2.3 upgraded from Bazel 2.0 to 3.1 as the minimum it might as well be a Bazel change. But then: Why does it work for some targets?

Thanks in advance
Reply all
Reply to author
0 new messages