2014-04-02 185 views
2

我正在使用x64 Ubuntu Linux通過VMware Player作爲虛擬機。作爲我的項目的一部分,我需要安裝一些庫(fec-3.0.1)。我是Linux新手,不善於編碼。Linux終端 - 錯誤:複合語句末尾的標籤

這裏是我在終端遇到配置成功後的誤差:

[email protected]:~/project/fatcaps_v0.5/fec-3.0.1$ make 
    gcc -g -O2 -I. -Wall -c -o dotprod.o dotprod.c 
    dotprod.c: In function ‘freedp’: 
    dotprod.c:56:3: error: label at end of compound statement 
     default: 
    ^
    make: *** [dotprod.o] Error 1 

在這裏被函數 'freedp'內容(開始行是55):

/* Free a dot product descriptor created earlier */ 
    void freedp(void *p){ 
     switch(Cpu_mode){ 
     case PORT: 
     default: 
    #ifdef __i386__ 
     case MMX: 
     case SSE: 
     return freedp_mmx(p); 
     case SSE2: 
     return freedp_sse2(p); 
    #endif 
    #ifdef __VEC__ 
     case ALTIVEC: 
     return freedp_av(p); 
    #endif 
     } 
    } 

什麼我應該怎麼做?

回答

9

爲什麼你滿足了錯誤label at end of compound statement是因爲default情況下不能爲空的原因,這意味着你必須提供一個break;空語句。

編輯:我覺得關於這個問題的一些材料,我得到了:https://mail.gnome.org/archives/evolution-patches/2004-April/msg00235.html,它是關於編譯gcc3.4,這對default報告錯誤,而不陳述的問題,並警告上的gcc3。 3,但現在,我在gcc4.8.2上測試,沒關係....