C++ 编译VNC服务器二进制文件(适用于Android)

C++ 编译VNC服务器二进制文件(适用于Android),c++,c,linux,gcc,android-ndk,C++,C,Linux,Gcc,Android Ndk,嘿,伙计们,我正试图从这里编译一个ELF二进制服务器文件: 为此,我遵循以下步骤:./configure--host=arm-eabi-CC=arm-linux-androideabi-gcc(起始行10-31)。我正确设置了NDK工具链,现在我正在尝试运行$configure命令 我使用的是14.04 Ubuntu机器 当我运行命令时: $./configure --host=arm-eabi CC=arm-linux-androideabi-gcc 我得到以下输出: root@ip-172

嘿,伙计们,我正试图从这里编译一个ELF二进制服务器文件:

为此,我遵循以下步骤:./configure--host=arm-eabi-CC=arm-linux-androideabi-gcc(起始行10-31)。我正确设置了NDK工具链,现在我正在尝试运行$configure命令

我使用的是14.04 Ubuntu机器

当我运行命令时:

$./configure --host=arm-eabi CC=arm-linux-androideabi-gcc
我得到以下输出:

root@ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#  
root@ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10# ./configure --host=arm-eabi CC=arm-linux-androideabi-gcc 
checking for a BSD-compatible install... /usr/bin/install -c 
checking whether build environment is sane... yes 
checking for arm-eabi-strip... no 
checking for strip... strip 
checking for a thread-safe mkdir -p... /bin/mkdir -p 
checking for gawk... gawk 
checking whether make sets $(MAKE)... yes 
checking whether make supports nested variables... yes
checking whether make supports nested variables... (cached) yes
checking for arm-eabi-gcc... arm-linux-androideabi-gcc
checking whether the C compiler works... no
configure: error: in `/home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10':
configure: error: C compiler cannot create executables
See `config.log' for more details
root@ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10# 
root@ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10# 
root@ip-172-31-35-74:~/Desktop/libvncserver-LibVNCServer-0.9.10#
当我查看config.log文件时,我看到以下内容(找不到问题:():


您需要指定gcc的完整路径或将其位置添加到path

已解决!解决方案正在提供gcc的完整路径…出于某种原因,尽管运行了echo$path或echo$CC,但在那里显示了它,但给了我一个错误,好像在我执行$configure命令时找不到编译器一样。仅通过提供运行$configure命令时,gcc的完整目录。

我明白了,让我再次尝试以下操作:并调用这些命令以希望修复它:$export-PATH=/tmp/my-android-toolchain/bin:$PATH&$export-CC=arm-linux-androideabi-gccSadly在我修改了步骤#3后这里:我甚至运行了两个$export命令在上面的评论中提到过……当我运行$./configure--host=arm-eabi CC=arm-linux-androideabi-gccI查找“arm-linux-androideabi-gcc”的位置并在这里找到它时,仍然会遇到相同的错误(/tmp/my-android-toolchain/bin/arm-linux-androideabi-gcc….确认它可以执行)将其添加到my PATH变量:$export PATH=/tmp/my-android toolchain/bin/arm-linux-androideabi-gcc:$PATH和相同的错误:/
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.

It was created by LibVNCServer configure 0.9.10, which was
generated by GNU Autoconf 2.69.  Invocation command line was

  $ ./configure --host=arm-eabi CC=arm-linux-androideabi-gcc

## --------- ##
## Platform. ##
## --------- ##

   hostname = ip-172-31-35-74
   uname -m = x86_64
   uname -r = 3.13.0-48-generic
   uname -s = Linux
   uname -v = #80-Ubuntu SMP Thu Mar 12 11:16:15 UTC 2015

   /usr/bin/uname -p = unknown
   /bin/uname -X     = unknown

   /bin/arch              = unknown
   /usr/bin/arch -k       = unknown
   /usr/convex/getsysinfo = unknown
   /usr/bin/hostinfo      = unknown
   /bin/machine           = unknown
   /usr/bin/oslevel       = unknown
   /bin/universe          = unknown

   PATH: /usr/bin
   PATH: /usr/local/sbin
   PATH: /usr/local/bin
   PATH: /usr/sbin
   PATH: /usr/bin
   PATH: /sbin
   PATH: /bin


   ## ----------- ##
   ## Core tests. ##
   ## ----------- ##
   configure:2612: checking for a BSD-compatible install
   configure:2680: result: /usr/bin/install -c
   configure:2691: checking whether build environment is sane
   configure:2746: result: yes
   configure:2805: checking for arm-eabi-strip
   configure:2835: result: no
   configure:2845: checking for strip
   configure:2861: found /usr/bin/strip
   configure:2872: result: strip
   configure:2897: checking for a thread-safe mkdir -p
   configure:2936: result: /bin/mkdir -p
   configure:2943: checking for gawk
   configure:2959: found /usr/bin/gawk
   configure:2970: result: gawk
   configure:2981: checking whether make sets $(MAKE)
   configure:3003: result: yes
   configure:3032: checking whether make supports nested variables
   configure:3049: result: yes
   configure:3185: checking whether make supports nested variables
   configure:3202: result: yes
   configure:3241: checking for arm-eabi-gcc
   configure:3268: result: arm-linux-androideabi-gcc
   configure:3537: checking for C compiler version
   configure:3546: arm-linux-androideabi-gcc --version >&5
   ./configure: line 3548: arm-linux-androideabi-gcc: command not found
   configure:3557: $? = 127
   configure:3546: arm-linux-androideabi-gcc -v >&5
   ./configure: line 3548: arm-linux-androideabi-gcc: command not found
   configure:3557: $? = 127
   configure:3546: arm-linux-androideabi-gcc -V >&5
   ./configure: line 3548: arm-linux-androideabi-gcc: command not found
   configure:3557: $? = 127
   configure:3546: arm-linux-androideabi-gcc -qversion >&5
   ./configure: line 3548: arm-linux-androideabi-gcc: command not found
   configure:3557: $? = 127
   configure:3577: checking whether the C compiler works
   configure:3599: arm-linux-androideabi-gcc    conftest.c  >&5
   ./configure: line 3601: arm-linux-androideabi-gcc: command not found
   configure:3603: $? = 127
   configure:3641: result: no
   configure: failed program was:

   | /* confdefs.h */
   | #define PACKAGE_NAME "LibVNCServer"
   | #define PACKAGE_TARNAME "libvncserver"
   | #define PACKAGE_VERSION "0.9.10"
   | #define PACKAGE_STRING "LibVNCServer 0.9.10"
   | #define PACKAGE_BUGREPORT "https://github.com/LibVNC/libvncserver"
   | #define PACKAGE_URL ""
   | #define PACKAGE "libvncserver"
   | #define VERSION "0.9.10"
   | #define VERSION_MAJOR 0
   | #define VERSION_MINOR 9
   | #define VERSION_PATCHLEVEL 10
   | /* end confdefs.h.  */
   | 
   | int
   | main ()
   | {
   | 
   |   ;
   |   return 0;
   | }
   configure:3646: error: in `/home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10':
   configure:3648: error: C compiler cannot create executables
   See `config.log' for more details

   ## ---------------- ##

## Cache variables. ##
## ---------------- ##

ac_cv_env_CC_set=set
ac_cv_env_CC_value=arm-linux-androideabi-gcc
ac_cv_env_CFLAGS_set=
ac_cv_env_CFLAGS_value=
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_GNUTLS_CFLAGS_set=
ac_cv_env_GNUTLS_CFLAGS_value=
ac_cv_env_GNUTLS_LIBS_set=
ac_cv_env_GNUTLS_LIBS_value=
ac_cv_env_GTK_CFLAGS_set=
ac_cv_env_GTK_CFLAGS_value=
ac_cv_env_GTK_LIBS_set=
ac_cv_env_GTK_LIBS_value=
ac_cv_env_JPEG_LDFLAGS_set=
ac_cv_env_JPEG_LDFLAGS_value=
ac_cv_env_LDFLAGS_set=
ac_cv_env_LDFLAGS_value=
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_PKG_CONFIG_LIBDIR_set=
ac_cv_env_PKG_CONFIG_LIBDIR_value=
ac_cv_env_PKG_CONFIG_PATH_set=
ac_cv_env_PKG_CONFIG_PATH_value=
ac_cv_env_PKG_CONFIG_set=
ac_cv_env_PKG_CONFIG_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=arm-eabi
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_path_install='/usr/bin/install -c'
ac_cv_path_mkdir=/bin/mkdir
ac_cv_prog_AWK=gawk
ac_cv_prog_CC=arm-linux-androideabi-gcc
ac_cv_prog_ac_ct_STRIP=strip
ac_cv_prog_make_make_set=yes
am_cv_make_support_nested_variables=yes

## ----------------- ##
## Output variables. ##
## ----------------- ##

ACLOCAL='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing aclocal-1.14'
AMDEPBACKSLASH=''
AMDEP_FALSE=''
AMDEP_TRUE=''
AMTAR='$${TAR-tar}'
AM_BACKSLASH='\'
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
AM_DEFAULT_VERBOSITY='0'
AM_V='$(V)'
ANDROID_FALSE=''
ANDROID_TRUE=''
AR=''
AS=''
AUTOCONF='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing autoconf'
AUTOHEADER='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing autoheader'
AUTOMAKE='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing automake-1.14'
AWK='gawk'
CC='arm-linux-androideabi-gcc'
CCDEPMODE=''
CFLAGS=''
CONFIG_LIBVA_FALSE=''
CONFIG_LIBVA_TRUE=''
CPP=''
CPPFLAGS=''
CRYPT_LIBS=''
CYGIPC_FALSE=''
CYGIPC_TRUE=''
CYGPATH_W='echo'
DEFS=''
DEPDIR=''
DLLTOOL=''
DSYMUTIL=''
DUMPBIN=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
FGREP=''
GNUTLS_CFLAGS=''
GNUTLS_LIBS=''
GREP=''
GTK_CFLAGS=''
GTK_LIBS=''
HAVE_GNUTLS_FALSE=''
HAVE_GNUTLS_TRUE=''
HAVE_LIBGTK_FALSE=''
HAVE_LIBGTK_TRUE=''
HAVE_LIBJPEG_FALSE=''
HAVE_LIBJPEG_TRUE=''
HAVE_LIBPNG_FALSE=''
HAVE_LIBPNG_TRUE=''
HAVE_LIBPTHREAD_FALSE=''
HAVE_LIBPTHREAD_TRUE=''
HAVE_LIBSDL_FALSE=''
HAVE_LIBSDL_TRUE=''
HAVE_LIBSSL_FALSE=''
HAVE_LIBSSL_TRUE=''
HAVE_LIBZ_FALSE=''
HAVE_LIBZ_TRUE=''
HAVE_MP3LAME_FALSE=''
HAVE_MP3LAME_TRUE=''
HAVE_RPM_FALSE=''
HAVE_RPM_TRUE=''
INSTALL_DATA='${INSTALL} -m 644'
INSTALL_PROGRAM='${INSTALL}'
INSTALL_SCRIPT='${INSTALL}'
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
JPEG_LDFLAGS=''
LD=''
LDFLAGS=''
LIBGCRYPT_CFLAGS=''
LIBGCRYPT_CONFIG=''
LIBGCRYPT_LIBS=''
LIBOBJS=''
LIBS=''
LIBTOOL=''
LINUX_FALSE=''
LINUX_TRUE=''
LIPO=''
LN_S=''
LTLIBOBJS=''
MAKEINFO='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/missing makeinfo'
MANIFEST_TOOL=''
MINGW_FALSE=''
MINGW_TRUE=''
MKDIR_P='/bin/mkdir -p'
NM=''
NMEDIT=''
OBJDUMP=''
OBJEXT=''
OSX_FALSE=''
OSX_TRUE=''
OTOOL64=''
OTOOL=''
PACKAGE='libvncserver'
PACKAGE_BUGREPORT='https://github.com/LibVNC/libvncserver'
PACKAGE_NAME='LibVNCServer'
PACKAGE_STRING='LibVNCServer 0.9.10'
PACKAGE_TARNAME='libvncserver'
PACKAGE_URL=''
PACKAGE_VERSION='0.9.10'
PATH_SEPARATOR=':'
PKG_CONFIG=''
PKG_CONFIG_LIBDIR=''
PKG_CONFIG_PATH=''
RANLIB=''
RPMSOURCEDIR=''
SDL_CFLAGS=''
SDL_LIBS=''
SED=''
SET_MAKE=''
SHELL='/bin/bash'
SSL_LIBS=''
STRIP='strip'
VA_LIBS=''
VERSION='0.9.10'
WITH_FFMPEG_FALSE=''
WITH_FFMPEG_TRUE=''
WITH_TIGHTVNC_FILETRANSFER_FALSE=''
WITH_TIGHTVNC_FILETRANSFER_TRUE=''
WITH_WEBSOCKETS_FALSE=''
WITH_WEBSOCKETS_TRUE=''
WSOCKLIB=''
ac_ct_AR=''
ac_ct_CC=''
ac_ct_DUMPBIN=''
am__EXEEXT_FALSE=''
am__EXEEXT_TRUE=''
am__fastdepCC_FALSE=''
am__fastdepCC_TRUE=''
am__include=''
am__isrc=''
am__leading_dot='.'
am__nodep=''
am__quote=''
am__tar='$${TAR-tar} chof - "$$tardir"'
am__untar='$${TAR-tar} xf -'
bindir='${exec_prefix}/bin'
build=''
build_alias=''
build_cpu=''
build_os=''
build_vendor=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host='arm-eabi'
host_alias='arm-eabi'
host_cpu=''
host_os=''
host_vendor=''
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
install_sh='${SHELL} /home/ubuntu/Desktop/libvncserver-LibVNCServer-0.9.10/install-sh'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
mkdir_p='$(MKDIR_P)'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='NONE'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
with_ffmpeg=''

## ----------- ##
## confdefs.h. ##
## ----------- ##

/* confdefs.h */
#define PACKAGE_NAME "LibVNCServer"
#define PACKAGE_TARNAME "libvncserver"
#define PACKAGE_VERSION "0.9.10"
#define PACKAGE_STRING "LibVNCServer 0.9.10"
#define PACKAGE_BUGREPORT "https://github.com/LibVNC/libvncserver"
#define PACKAGE_URL ""
#define PACKAGE "libvncserver"
#define VERSION "0.9.10"
#define VERSION_MAJOR 0
#define VERSION_MINOR 9
#define VERSION_PATCHLEVEL 10

configure: exit 77
./configure: line 3548: arm-linux-androideabi-gcc: command not found