Jump to content

vpi_user.h : file or directory not found

Recommended Posts

I'm getting an error to compile uvm hello world example:

$ make -f Makefile.questa all
make -f Makefile.questa BITS=32 dpi_lib
make[1]: Entering directory '/tmp/uvm-1.2/examples/simple/hello_world'
mkdir -p ../../../lib
gcc -m32 -fPIC -DQUESTA -g -W -shared -x c -I/include ../../../src/dpi/uvm_dpi.cc -o ../../../lib/uvm_dpi.so
In file included from ../../../src/dpi/uvm_dpi.cc:34:0:
../../../src/dpi/uvm_dpi.h:31:22: fatal error: vpi_user.h: Arquivo ou diretório não encontrado
compilation terminated.
../../Makefile.questa:161: recipe for target 'dpi_lib' failed
make[1]: *** [dpi_lib] Error 1
make[1]: Leaving directory '/tmp/uvm-1.2/examples/simple/hello_world'
../../Makefile.questa:169: recipe for target 'dpi_lib32' failed
make: *** [dpi_lib32] Error 2



How can I fix this? I'm trying to use UVM for the first time.

Share this post

Link to post
Share on other sites

Are you trying to compile it on Windows? I don't think QuestaSim supports DPI under Windows (or at least not easily). At the same time, you don't really need to compile UVM itself when running QuestaSim, because the simulator comes packaged with the library and can reference that.

* You can change the Makefile to not compile UVM anymore, only the testbench code for the example.

* You can also disable DPI by adding the UVM_NO_DPI define (here you might also need to remove the lines from the Makefile that try to compile the C code).

* Finally, what's missing there is the path to 'vpi_user.h'. You can add a '-I /path/to/vpi/user/h/inside/questa/installation/' to the GCC call, to tell it explicitly where it can find the file.

Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now