Hi all,

I’m trying to compile the hadoop-1.0.3 source code using the command:

ant package -Djava5.home=$JAVA_HOME -Dforrest.home=$FORREST_HOME

It failed. The fail log is as follows. Can anyone tell me how to solve it?
Thanks.


[exec] depbase=`echo impl/task-controller.o | sed 
's|[^/]*$|.deps/&|;s|\.o$||'`;\
     [exec] gcc -DPACKAGE_NAME=\"linux-task-controller\" 
-DPACKAGE_TARNAME=\"linux-task-controller\" -DPACKAGE_VERSION=\"1.0.0\" 
-DPACKAGE_STRING=\"linux-task-controller\ 1.0.0\" 
-DPACKAGE_BUGREPORT=\"[email protected]<mailto:[email protected]>\"
 -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 
-DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 
-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__EXTENSIONS__=1 
-D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D_TANDEM_SOURCE=1 
-DPACKAGE=\"linux-task-controller\" -DVERSION=\"1.0.0\" -DHAVE_DLFCN_H=1 
-DLT_OBJDIR=\".libs/\" -DHAVE_UNISTD_H=1 -DHAVE__BOOL=1 -DHAVE_STDBOOL_H=1 
-DHAVE_DECL_STRERROR_R=1 -DHAVE_STRERROR_R=1 -DHAVE_MKDIR=1 -DHAVE_UNAME=1 -I. 
-I/usr/local/hadoop-1.0.3/src/c++/task-controller    
-I/usr/local/hadoop-1.0.3/src/c++/task-controller/impl -Wall -g -Werror 
-DHADOOP_CONF_DIR=/etc/hadoop -MT impl/task-controller.o -MD -MP -MF 
$depbase.Tpo -c -o impl/task-controller.o 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c &&\
     [exec] mv -f $depbase.Tpo $depbase.Po
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:80:15: 
error: use of undeclared identifier 'PATH_MAX'
     [exec]   char buffer[PATH_MAX];
     [exec]               ^
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:82:27: 
error: use of undeclared identifier 'PATH_MAX'
     [exec]   char *filename = malloc(PATH_MAX);
     [exec]                           ^
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:88:21: 
error: use of undeclared identifier 'PATH_MAX'
     [exec]   } else if (len >= PATH_MAX) {
     [exec]                     ^
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:90:13: 
error: use of undeclared identifier 'PATH_MAX'
     [exec]             PATH_MAX, filename, PATH_MAX);
     [exec]             ^
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:892:3: 
error: implicit declaration of function 'fcloseall' is invalid in C99 
[-Werror,-Wimplicit-function-declaration]
     [exec]   fcloseall();
     [exec]   ^
     [exec] 
/usr/local/hadoop-1.0.3/src/c++/task-controller/impl/task-controller.c:892:3: 
note: did you mean 'fclose'?
     [exec] /usr/include/stdio.h:232:6: note: 'fclose' declared here
     [exec] int      fclose(FILE *);
     [exec]          ^
     [exec] 5 errors generated.
     [exec] make: *** [impl/task-controller.o] Error 1

BUILD FAILED
/usr/local/hadoop-1.0.3/build.xml:1598: The following error occurred while 
executing this line:
/usr/local/hadoop-1.0.3/build.xml:2781: exec returned: 2

Total time: 1 minute 37 seconds


Bo Fu
Master’s Program of Computer Science, University of Chicago


Reply via email to