Build failing - "Property 'VENDOR' is not allowed."

I am trying to use the instructions here to build Psi4 on Ubuntu 20.04. I am currently building the latest commit on GitHub, but I have also tried building the latest release (v1.9.0) and I get the same error. When building, I get the following error:

CMake Error at external/common/lapack/CMakeLists.txt:38 (set_property):
  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "VENDOR" is not allowed.


CMake Error at external/common/lapack/CMakeLists.txt:39 (set_property):
  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "INT_INTERFACE" is not allowed.

Based on this post, I’m inclined to think this is an issue with an out-of-date CMake version. However, my version is 3.16.3, which is above the minimum of 3.15, though my guess would be that the minimum CMake version on the website is no longer accurate.

I probably can’t install a version of CMake outside of the distribution package manager because it will likely require me to upgrade quite a few libraries and will create dependency hell on my host system (I’ve had issues like this before). Rather than trying to build a ton of packages from source, I’d just upgrade my Ubuntu version, but that will also take a long time, and will likely break a lot of software I currently have installed. Before I do that, I just want to confirm the cause of this issue.

The usual recommended way to handle dependencies needed for compilation is with conda. You should be able to find the instructions on installing dependencies (including cmake) through conda here: Install v1.9.1+ | Installs (See “source” tab)

It should be possible to get all dependencies without conda, but I’ve never attempted it.

Thanks for the info. The official build instructions don’t mention using Conda, so I honestly thought that was only useful for a non-development install.

In case anyone else is stuck, I ended up making a Dockerfile to set up a build image based on the code in the Azure pipeline, which works very well. This is based on Ubuntu 20.04 and uses a Miniconda install, so presumably the same would work on an Ubuntu system that (unlike mine) doesn’t have weird incompatible versions of packages installed. For those that can’t get it working on their main system, I hope the Docker script is useful.