我試圖在運行Linux 2.6的Buffalo LinkStation Pro Duo(unlocking it之後)編譯GCC 4.7.2。 31.8 armv5tel。GCC編譯產生「real.h:53:錯誤:'SIZEOF_LONG'這裏未聲明(不在函數中)」
不幸的是,make
拋出相當一些錯誤,與
gcc -c -DIN_GCC_FRONTEND -g -fkeep-inline-functions -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-formIn file included from ../../gcc-4.7.2/gcc/tree.h:32,
from ../../gcc-4.7.2/gcc/c-lang.c:27:
../../gcc-4.7.2/gcc/real.h:53: error: 'SIZEOF_LONG' undeclared here (not in a function)
In file included from ../../gcc-4.7.2/gcc/tree.h:32,
from ../../gcc-4.7.2/gcc/c-lang.c:27:
../../gcc-4.7.2/gcc/real.h:87:5: error: division by zero in #if
../../gcc-4.7.2/gcc/real.h:87:5: error: division by zero in #if
../../gcc-4.7.2/gcc/real.h:90:6: error: division by zero in #if
開始53線的real.h
讀取unsigned long sig[SIGSZ];
,其中SIGSZ
在管線40作爲
#define SIGSZ (SIGNIFICAND_BITS/HOST_BITS_PER_LONG)
限定,而線87是#if REAL_WIDTH == 1
與REAL_WIDTH
限定的起始在作爲
#define REAL_WIDTH \
(REAL_VALUE_TYPE_SIZE/HOST_BITS_PER_WIDE_INT \
+ (REAL_VALUE_TYPE_SIZE%HOST_BITS_PER_WIDE_INT ? 1 : 0)) /* round up */
這似乎歸結爲HOST_BITS_PER_*
爲零。我是否必須用一些configure
參數手動定義這些參數,或者如何解決這個問題?
更新
config.log
包含以下錯誤:
conftest.c:10:19: error: ppl_c.h: No such file or directory
conftest.c: In function 'main':
conftest.c:16: error: 'choke' undeclared (first use in this function)
conftest.c:16: error: (Each undeclared identifier is reported only once
conftest.c:16: error: for each function it appears in.)
conftest.c:16: error: expected ';' before 'me'
configure:5708: $? = 1
configure: failed program was:
| /* confdefs.h */
| #define PACKAGE_NAME ""
| #define PACKAGE_TARNAME ""
| #define PACKAGE_VERSION ""
| #define PACKAGE_STRING ""
| #define PACKAGE_BUGREPORT ""
| #define PACKAGE_URL ""
| #define LT_OBJDIR ".libs/"
| /* end confdefs.h. */
| #include "ppl_c.h"
| int
| main()
| {
|.
| #if PPL_VERSION_MAJOR != 0 || PPL_VERSION_MINOR < 11
| choke me
| #endif
|.
| ;
| r
繼this post我似乎已經忘記了安裝ppl,我會盡力現在
該條目在那裏,雖然它是'#define SIZEOF_LONG 4'這裏。在config.log中還有其他的錯誤,我把它們追加到我的問題 –
我接受你的答案,因爲檢查'config.log'指出我缺少'ppl'。但實際的解決方案[涉及更多的麻煩](http://stackoverflow.com/a/13874779/321973) - 如果是解決方案,編譯仍在運行...... –