System verilog UVM SV:包还包括子包中包含的文件

System verilog UVM SV:包还包括子包中包含的文件,system-verilog,uvm,System Verilog,Uvm,我的SV-UVM环境是这样构建的: Package pkgA; `include "file1.sv"; endpackage Package pkgB; `include "file1.sv"; endpackage Package pkgC; import pkgA::*; import pkgB::*; `include "file1.sv"; `include "pkgA.sv"; `include "pkgB.sv"; endpackage

我的SV-UVM环境是这样构建的:

Package pkgA;
   `include "file1.sv";
endpackage

Package pkgB;
  `include "file1.sv";
endpackage

Package pkgC;
   import pkgA::*;
   import pkgB::*;

   `include "file1.sv";
   `include "pkgA.sv";
   `include "pkgB.sv";
endpackage
我得到以下错误:

无法解析文件1,因为它是在包pkgA和包pkgB中定义的,这两个包都是通配符导入的


我如何解决这个问题

尝试将所有文件放在与运行目录相同的目录中。我认为这只是编译脚本中的相对路径问题。调用verilog编译器时,需要在中设置包含路径。

需要显示“file1.sv”中的内容以及为什么需要将其包含在
pkgA
pkgB
pkgC
中。它只是文本宏吗?为什么要将
pkgA
pkgB
导入并包含到
pkgC
?请查看您是否难以理解差异。