作者Phantasnix (凰响)
看板EE_DSnP
标题[问题]undefined reference to 'typeinfo for..'
时间Sat Jan 5 00:38:59 2013
class中的static member有在cpp中初始化。(unsigned CirGate::_globalRef = 0;)
pure virtual function在每个子class中都有实作。
先前也发生过这样的状况,所以我把上述重check了遍。也make clean过。
把新写的几个function先comment掉。将class状态回复到先前可以compile的状态。
但还是跳出这样的讯息:
../../lib/libcir.a(cirMgr.o): In function
`CirMgr::readCircuit(std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&)':
/home/phantasnix/DSnP/fraig/src/cir/cirMgr.cpp:233: undefined reference to
`typeinfo for AIG'
/home/phantasnix/DSnP/fraig/src/cir/cirMgr.cpp:233: undefined reference to
`typeinfo for AIG'
../../lib/libcir.a(cirMgr.o): In function
`CirMgr::writeAag(std::basic_ostream<char, std::char_traits<char> >&) const':
/home/phantasnix/DSnP/fraig/src/cir/cirMgr.cpp:435: undefined reference to
`typeinfo for AIG'
/home/phantasnix/DSnP/fraig/src/cir/cirMgr.cpp:435: undefined reference to
`typeinfo for AIG'
../../lib/libcir.a(cirMgr.o): In function `AIG':
/home/phantasnix/DSnP/fraig/src/cir/cirGate.h:131: undefined reference to
`vtable for AIG'
google後除了最开始提到的原因,要解决都是link library层面的东西.....
但是先前可以compile的,应该是我还少check了什麽,实在一筹莫展PO文求救。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.243.201
1F:推 ric2k1:如果 virutal function, static 都检查过了,哪可能只好 01/05 01:29
2F:→ ric2k1:把心写的东西用 binary search comment out 掉,看看到底是 01/05 01:29
3F:→ ric2k1: (新写) | 哪里的问题... 01/05 01:30
4F:→ djshen:明年可以教一下版本控制XD 01/05 02:03
5F:推 ric2k1:是吗? 我想版本控制的 tool 应该摸一下就上手了吧! 问题是 01/05 02:08
6F:→ ric2k1:没有机会练习的话可能有是没有用... (我来想想新的 project 01/05 02:08
※ 编辑: Phantasnix 来自: 140.112.243.201 (01/05 12:20)
7F:推 yan12125:少const? 01/05 16:15
8F:推 ric2k1:的确有可能因为少 const 而被视为不同 functions, 造成某些 01/05 20:18
9F:→ ric2k1:pure virtualfunction 没有被所有的 derived class inherit 01/05 20:19
10F:推 wmin0:不是function的undefined refernece 是type的vtable整个不见 01/05 22:07
11F:→ wmin0:编.o是不是把vtable统统干掉了 01/05 22:08