2

我正在尝试在 CentOS 6.3 上使用 ELDK 5.3 为 ARM 交叉编译 freeswitch。

在make上发现这个错误:

./include/apr.h:347:2: error: #error Can not determine the proper size for ssize_t

我已经完成了以下声明

declare -x CROSS_COMPILE="/opt/eldk-5.3/armv5te/sysroots/i686-eldk-linux/usr/bin/armv5te-linux-gnueabi/arm-linux-gnueabi-"
declare -x CC="$CROSS_COMPILE"gcc
declare -x CXX="$CROSS_COMPILE"g++
declare -x CPP="$CROSS_COMPILE"cpp
declare -x STRIP="$CROSS_COMPILE"strip
declare -x RANLIB="$CROSS_COMPILE"ranlib
declare -x AR="$CROSS_COMPILE"ar
declare -x AS="$CROSS_COMPILE"as
declare -x NM="$CROSS_COMPILE"nm
declare -x LD="$CROSS_COMPILE"ld

export PATH=$PATH:/opt/eldk-5.3/armv5te/sysroots/i686-eldk-linux/usr/bin/armv5te-linux-gnueabi

使用以下标志配置

./configure --target=arm --host=arm-linux --build=i686-linux --prefix=/opt/eldk-5.3/armv5te/rootfs-base/armcodasVL  ac_cv_file__dev_ptmx=yes config_BUILD_CC=gcc config_TARGET_CC=arm-linux-gnueabi-gcc config_TARGET_READLINE_INC=" " ac_cv_file__dev_zero=yes ac_cv_func_setpgrp_void=yes apr_cv_tcp_nodelay_with_cork=yes ac_cv_file_dbd_apr_dbd_mysql_c=no ac_cv_va_copy=yes

然后是make,我无法弄清楚为什么会这样!请建议你们中是否有人遇到过同样的情况?

4

2 回答 2

1

我之前发布的解决方案有点糟糕。因为它在生成的标头中,后来我找到了正确的方法,那就是添加一个配置标志

export ac_cv_sizeof_ssize_t=4;

只是在配置之前做了它,从那以后一切都很好!

于 2013-01-25T07:47:15.477 回答
0

我以某种方式通过替换 libs/apr/include/apr 中的以下行来管理它。

#error Can not determine the proper size for ssize_t

#define APR_SSIZE_T_FMT "ld"
于 2013-01-21T10:03:33.210 回答