You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mapreduce-issues@hadoop.apache.org by "Chris Nauroth (JIRA)" <ji...@apache.org> on 2013/02/08 21:27:13 UTC

[jira] [Commented] (MAPREDUCE-4995) task-controller fails compilation on Mac

    [ 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