Я разработал perl-скрипт для запуска примеров кода UVM-SystemC.
#!/usr/bin/perl
use warnings;
use strict;
sub main();
my $CLIBS = "\$SYSTEMC_HOME/lib-linux64";
my $UVMCLIBS = "\$UVMSYSTEMC_HOME/lib-linux64";
my $CINC = "\$SYSTEMC_HOME/include";
my $UVMCINC = "\$UVMSYSTEMC_HOME/include";
main();
sub main(){
eval{
$ARGV[0];
}or do{
print("\n\tRun the script with SystemC <filename> as argument\n\n");
exit 1;
};
system "g++ -I$CINC -I$UVMCINC -L$CLIBS -lsystemc -L$UVMCLIBS -luvm-systemc $ARGV[0] -Wl,-rpath,$CLIBS -Wl,-rpath,$UVMCLIBS";
#system "./sim";
}
Здесь переменные $ указывают на соответствующие пути установки SystemC и UVM-SystemC. И сценарий ожидает файл *.cpp в качестве аргумента для $ARGV[0]. Примеры команд обеих библиотек работают правильно с помощью make check
, но сценарий выдает ошибку. Подробный журнал ошибок error.log