2008年9月1日 星期一

Building samba 3.2.2: error while running configure: cannot run test program while cross compiling

交叉编译samba(mipsel-linux)
http://hi.baidu.com/jiaolingqi/blog/item/640fa777dd21ba12b051b9db.html

Tough question: errors while cross compiling to MIPS
http://old.nabble.com/Tough-question:-errors-while-cross-compiling-to-MIPS-td11657205.html

Re: cannot run test program while cross compiling.
http://coding.derkeiler.com/Archive/General/comp.arch.embedded/2007-10/msg00158.html

[Samba] Cannot cross-compile 3.0.20b from i686 to mipsel
http://lists.samba.org/archive/samba/2005-November/113506.html

Building samba 3.2.2 for armv4

  1. samba-3.2.2/source/configure
    ############################################
    # check if the compiler can handle negative enum values
    # and don't truncate the values to INT_MAX
    # a runtime test is needed here

    { echo "$as_me:$LINENO: checking that the C compiler understands negative enum values" >&5
    echo $ECHO_N "checking that the C compiler understands negative enum values... $ECHO_C" >&6; }
    if test "${samba_cv_CC_NEGATIVE_ENUM_VALUES+set}" = set; then
    echo $ECHO_N "(cached) $ECHO_C" >&6
    else

    if test "$cross_compiling" = yes; then
    { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
    See \`config.log' for more details." >&5
    echo "$as_me: error: cannot run test program while cross compiling
    See \`config.log' for more details." >&2;}
    { (exit 1); exit 1; }; }


    so add "samba_cv_CC_NEGATIVE_ENUM_VALUES=yes" to parameter list of configure would fix this problem
        ./configure \
    --host=arm-linux CC=arm-linux-gcc --prefix=${INSTALL_PATH} CFLAGS="-pipe -Os -march=armv4" \
    samba_cv_CC_NEGATIVE_ENUM_VALUES=yes

  2. samba-3.2.2/source/configure
    #
    #
    #
    case "$host_os" in
    *linux*)
    # glibc <= 2.3.2 has a broken getgrouplist
    if test "$cross_compiling" = yes; then
    # { { echo "$as_me:$LINENO: error: cannot run test program while cross compiling
    #See \`config.log' for more details." >&5
    #echo "$as_me: error: cannot run test program while cross compiling
    #See \`config.log' for more details." >&2;}
    # { (exit 1); exit 1; }; }
    { echo "$as_me:$LINENO: glibc <= 2.3.2 check skipped" >&5
    echo "$as_me: glibc <= 2.3.2 check skipped" >&2;}

    else
    cat >conftest.$ac_ext <<_ACEOF

    Or,
    }; }
    # { (exit 1); exit 1; }; }


沒有留言: