[英]Compile time Error in C
我想編譯一個C代碼( davinci_spi.c )。 相應的頭文件如下:
davinci_spi.h:
#ifndef _DAVINCI_SPI_H_
#define _DAVINCI_SPI_H_
struct davinci_spi_regs {
dv_reg gcr0; /* 0x00 */
dv_reg gcr1; /* 0x04 */
dv_reg int0; /* 0x08 */
dv_reg lvl; /* 0x0c */
dv_reg flg; /* 0x10 */
dv_reg pc0; /* 0x14 */
dv_reg pc1; /* 0x18 */
dv_reg pc2; /* 0x1c */
dv_reg pc3; /* 0x20 */
dv_reg pc4; /* 0x24 */
dv_reg pc5; /* 0x28 */
dv_reg rsvd[3];
dv_reg dat0; /* 0x38 */
dv_reg dat1; /* 0x3c */
dv_reg buf; /* 0x40 */
dv_reg emu; /* 0x44 */
dv_reg delay; /* 0x48 */
dv_reg def; /* 0x4c */
dv_reg fmt0; /* 0x50 */
dv_reg fmt1; /* 0x54 */
dv_reg fmt2; /* 0x58 */
dv_reg fmt3; /* 0x5c */
dv_reg intvec0; /* 0x60 */
dv_reg intvec1; /* 0x64 */
};
`(我認為剩下的文件代碼並不重要,所以不包括它們)
當我嘗試編譯davinci_spi.c時出現此錯誤:
In file included from D:/android/android/myprojects/test1/jni/davinci_spi.c:32:
D:/android/android/myprojects/test1/jni/davinci_spi.h:6: error: expected specifier-qualifier-list before 'dv_reg'
注意:我使用的是cygwin(添加了C / C ++編譯器),而davinci_spi.c是一個簡單的linux驅動程序
我敢打賭,dv_reg沒有定義。 請務必包含定義dv_reg類型的頭文件。
dv_reg在哪里宣布? 我既沒有發現這種類型的定義,也沒有發現聲明它的.h文件的包含。 我建議跟蹤定義此數據類型的位置,並將此頭文件包含在驅動程序文件中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.