昨天遇到一个莫名其妙的编译错误,以前没有见过,而且代码流程看起来也没有太多的奇异之处。后来忍无可忍,百度了下,发现别人也有遇到这个错误的,他的解决方法是:少了“}”。
嘿嘿,我开始跟踪每一个函数,终于找到了这个地方。对的。就是因为少了一个“}”。所以要注意了,仔细仔细哈。下面就是make后出现的错误:
xxxxx.c:100: error: invalid storage class for function
'xxxxxxx'
dm9000x.c: In function 'eth_rx':
dm9000x.c:523: error: invalid storage class for function
'read_srom_word'
dm9000x.c:536: error: invalid storage class for function
'DM9000_ior'
dm9000x.c:546: error: invalid storage class for function
'DM9000_iow'
dm9000x.c:556: error: invalid storage class for function
'phy_read'
dm9000x.c:576: error: invalid storage class for function
'phy_write'
dm9000x.c:588: error: expected declaration or statement at end of
input
make[1]: *** [dm9000x.o] Error 1
make[1]: Leaving directory
`/home/forlinx/6410/uboot1.1.6/drivers'
make: *** [drivers/libdrivers.a] Error 2