[ https://issues.apache.org/jira/browse/MAPREDUCE-4995?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13574788#comment-13574788 ]
Chris Nauroth commented on MAPREDUCE-4995: ------------------------------------------ See below for output from an "ant package" run. PATH_MAX undeclared is trivially fixed by adding #include <limits.h>. The missing functions are trickier. In my quick grep of the Mac header files, I didn't find any declarations for those functions. {noformat} [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:84: error: ‘PATH_MAX’ undeclared (first use in this function) [exec] cc1: warnings being treated as errors [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: In function ‘mkdirs’: [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:343: warning: implicit declaration of function ‘mkdirat’ [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:352: warning: implicit declaration of function ‘openat’ [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: In function ‘run_task_as_user’: [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:904: warning: implicit declaration of function ‘fcloseall’ [exec] make: *** [impl/task-controller.o] Error 1Actually, I take back my last comment about task-controller. It would still be incompatible in the sense that people running "ant package" may currently expect it to bundle task-controller, and the change I described would require them to start passing the compile.native parameter. I am +1 for version 6 of the patch after removal of if="compile.native" from the task-controller target. This is enough to get "ant compile" working on Mac. We'd still need a Linux VM to run "ant package". Does anyone think that perhaps the right thing to do is to get task-controller compiling on Mac? This would be handled in a separate jira. I've pasted the compilation failures below. PATH_MAX undeclared is trivially fixed by adding #include <limits.h>. The missing functions are trickier. In my quick grep of the Mac header files, I didn't find any declarations for those functions. [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:84: error: ‘PATH_MAX’ undeclared (first use in this function) [exec] cc1: warnings being treated as errors [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: In function ‘mkdirs’: [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:343: warning: implicit declaration of function ‘mkdirat’ [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:352: warning: implicit declaration of function ‘openat’ [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c: In function ‘run_task_as_user’: [exec] /Users/chris/git/hadoop-common/src/c++/task-controller/impl/task-controller.c:904: warning: implicit declaration of function ‘fcloseall’ [exec] make: *** [impl/task-controller.o] Error 1 {noformat} > task-controller fails compilation on Mac > ---------------------------------------- > > Key: MAPREDUCE-4995 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-4995 > Project: Hadoop Map/Reduce > Issue Type: Bug > Components: task-controller > Affects Versions: 1.2.0 > Reporter: Chris Nauroth > > The branch-1 task-controller codebase will not compile on Mac. This also > means that Mac users generally can't run "ant package" unless they hack the > build.xml to skip task-controller. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira