Thank you.
Actually i had some incomplete declarations/definitions of virtual methods. Regards, Markus Neu ________________________________ Von: gem5-users <gem5-users-boun...@gem5.org> im Auftrag von Oscar Rosell <oscar.ros...@metempsy.com> Gesendet: Samstag, 15. Juli 2017 18:39 An: gem5 users mailing list Cc: m5-us...@m5sim.org Betreff: Re: [gem5-users] undefined reference to `vtable for Port Hi, This looks just like a C++ error. Check solution for: https://stackoverflow.com/questions/3065154/undefined-reference-to-vtable Regards, Oscar On 15 Jul 2017, at 17:47, Neu, Markus <m....@campus.tu-berlin.de<mailto:m....@campus.tu-berlin.de>> wrote: Hallo, at the moment i try to add a additional port to the cache.cc/.hh<http://cache.cc/.hh>. The idea is to send a copy of the packets to a new module. I use a example from: learning.gem5.org/book/part2/memoryobject.html<http://learning.gem5.org/book/part2/memoryobject.html> as template for the port implementation. Now i have reached a point were the syntax generates no more problems. But the compiler stops with errors: build/X86/mem/cache/lib.o.partial: In function `Cache::DapuSidePort::DapuSidePort(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Cache*)': /home/osboxes/gem5_raw/build/X86/mem/cache/cache.hh:204: undefined reference to `vtable for Cache::DapuSidePort' build/X86/mem/cache/lib.o.partial: In function `Cache::DapuSidePort::~DapuSidePort()': /home/osboxes/gem5_raw/build/X86/mem/cache/cache.hh:190: undefined reference to `vtable for Cache::DapuSidePort' /home/osboxes/gem5_raw/build/X86/mem/cache/cache.hh:190: undefined reference to `vtable for Cache::DapuSidePort' build/X86/exposed_obj/lib.o.partial: In function `Dapu::CPUSidePort::CPUSidePort(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Dapu*)': /home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:43: undefined reference to `vtable for Dapu::CPUSidePort' /home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:43: undefined reference to `vtable for Dapu::CPUSidePort' build/X86/exposed_obj/lib.o.partial: In function `Dapu::CPUSidePort::~CPUSidePort()': /home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:25: undefined reference to `vtable for Dapu::CPUSidePort' /home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:25: undefined reference to `vtable for Dapu::CPUSidePort' /home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:25: undefined reference to `vtable for Dapu::CPUSidePort' build/X86/exposed_obj/lib.o.partial:/home/osboxes/gem5_raw/build/X86/exposed_obj/Dapu.hh:25: more undefined references to `vtable for Dapu::CPUSidePort' follow collect2: error: ld returned 1 exit status scons: *** [build/X86/gem5.opt] Error 1 The gem5 version which i use is from today but the template seems to be much older. The error massages point to the constructor and class definitions: Dapu.hh:25 --> class CPUSidePort : public SlavePort Dapu.hh:43 -->CPUSidePort(const std::string& name, Dapu *owner) : SlavePort(name, owner), owner(owner), needRetry(false), blockedPacket(nullptr) { } Unfortunately i don't understand what the compiler indicates but would assume a missing library. I would appreciate some hints. Regards, Markus Neu _______________________________________________ gem5-users mailing list gem5-users@gem5.org<mailto:gem5-users@gem5.org> http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users
_______________________________________________ gem5-users mailing list gem5-users@gem5.org http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users