'Installing Armadillo on macOS with homebrew

I am trying to install Armadillo with Homebrew with

brew install armadillo

but when I try to compile with

g++ example.cpp -o example -std=c++11 -O2 -larmadillo

it gives the following error:

fatal error: 'armadillo' file not found

How can I solve this problem?



Solution 1:[1]

I'm guessing here that you have a new M1 Mac. The issue in this case is that ARM-native homebrew is installed to /opt/homebrew/ by default, meaning armadillo was installed to /opt/homebrew/include/ which is not in your search path.

To see if this is the case, try providing the paths as follows:

CPATH=/opt/homebrew/include LIBRARY_PATH=/opt/homebrew/lib g++ example.cpp -o example -std=c++11 -O2 -larmadillo

To avoid the issue in general, I'm running with those CPATH and LIBRARY_PATH variables exported in my ~/.zprofile file (using zsh). I found this answer on the apple stack exchange helpful.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Roee Shenberg