<div dir="ltr"><div dir="ltr">Hi all,<div><br></div><div>I have a program with C++ that I am trying to integrate with PETSc on MacOS X. My Makefile looks like this</div><div><br></div><div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#-----[Makefile]------<br>include ${PETSC_DIR}/lib/petsc/conf/variables<br>include ${PETSC_DIR}/lib/petsc/conf/rules<br>include ${PETSC_DIR}/lib/petsc/conf/test<br></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#----[Directories]----<br>oPath = obj<br>sPath = src<br>iPath = inc $(PETSC_LIB)<br>#====================<br></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#---[Compiler and Settings]-----<br>compiler = g++-8<br>compilerFlags = -std=c++11 -Wall -lm -llapack -lblas -O3<br>paths  = -I./$(iPath)<br>#======================<br></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#----[Variable Names]-------<br>headers = $(wildcard $(iPath)/*.hpp)<br>sources = $(wildcard $(sPath)/*.cpp)<br>objects = $(subst $(sPath)/,$(oPath)/,$(sources:.cpp=.o))<br>#==========================<br></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#----[Compilation]---------<br>main:$(objects) $(headers) main.cpp<br><span style="white-space:pre">      </span>$(compiler) $(compilerFlags) -o main $(objects) main.cpp $(PETSC_LIB) $(paths)<br>$(oPath)/%.o:$(sPath)/%.cpp $(subst $(sPath)/, $(iPath)/,$(<:.cpp=.hpp))<br><span style="white-space:pre">        </span>@mkdir -p $(@D)<br><span style="white-space:pre">    </span>$(compiler) $(compilerFlags) -o $@ -c $(paths) $<<br></blockquote><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">#-----[Clean up]-------<br># clean:rm main<br># <span style="white-space:pre">    </span>rm -rf $(oPath)/</blockquote></div><div><br></div><div>When I try to include "petsc.h", I get a "no such file or directory" error. I have PETSC_DIR and PETSC_ARCH set correctly, but I'm not the most proficient with Make. Can someone provide some tips on how to get this working properly? </div><div><br></div><div>Best,</div><div>Justin</div></div></div>