当前位置: 首页 > 工具软件 > m2e-android > 使用案例 >

arm-linux-androideabi-gcc 4.8的选项分析

孟俊发
2023-12-01
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/bin/
bash: /home/zhangbin/android/android-toolchain/bin/: No such file or directory
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc -v
Using built-in specs.
COLLECT_GCC=/home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc
COLLECT_LTO_WRAPPER=/home/zhangbin/android/android-toolchain/r9-4.8/bin/../libexec/gcc/arm-linux-androideabi/4.8/lto-wrapper
Target: arm-linux-androideabi
Configured with: /s/ndk-toolchain/src/build/../gcc/gcc-4.8/configure --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --target=arm-linux-androideabi --host=x86_64-linux-gnu --build=x86_64-linux-gnu --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --with-gmp=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpfr=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpc=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-cloog=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-isl=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-ppl=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --disable-ppl-version-check --disable-cloog-version-check --disable-isl-version-check --enable-cloog-backend=isl --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --disable-libssp --enable-threads --disable-nls --disable-libmudflap --disable-libgomp --disable-libstdc__-v3 --disable-sjlj-exceptions --disable-shared --disable-tls --disable-libitm --with-float=soft --with-fpu=vfp --with-arch=armv5te --enable-target-optspace --enable-initfini-array --disable-nls --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --with-sysroot=/tmp/ndk-andrewhsieh/build/toolchain/prefix/sysroot --with-binutils-version=2.23 --with-mpfr-version=3.1.1 --with-mpc-version=1.0.1 --with-gmp-version=5.0.5 --with-gcc-version=4.8 --with-gdb-version=7.3.x --with-python=/usr/local/google/home/andrewhsieh/mydroid/ndk/prebuilt/linux-x86/bin/python-config.sh --with-gxx-include-dir=/tmp/ndk-andrewhsieh/build/toolchain/prefix/include/c++/4.8 --with-bugurl=http://source.android.com/source/report-bugs.html --disable-bootstrap --disable-libquadmath --enable-plugins --enable-libgomp --disable-libsanitizer --enable-gold --enable-graphite=yes --with-cloog-version=0.18.0 --with-isl-version=0.11.1 --with-arch=armv5te --program-transform-name='s&^&arm-linux-androideabi-&' --enable-gold=default
Thread model: posix
gcc version 4.8 (GCC) 

root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 



root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc --help
Usage: arm-linux-androideabi-gcc [options] file...
Options:
  -pass-exit-codes         Exit with highest error code from a phase
  --help                   Display this information
  --target-help            Display target specific command line options
  --help={common|optimizers|params|target|warnings|[^]{joined|separate|undocumented}}[,...]
                           Display specific types of command line options
  (Use '-v --help' to display command line options of sub-processes)
  --version                Display compiler version information
  -dumpspecs               Display all of the built in spec strings
  -dumpversion             Display the version of the compiler
  -dumpmachine             Display the compiler's target processor  计算机的目标处理器
  -print-search-dirs       Display the directories in the compiler's search path             在计算机中的搜寻路径
  -print-libgcc-file-name  Display the name of the compiler's companion library  计算机的同伴?指南库的名字???
  -print-file-name=<lib>   Display the full path to library <lib>
  -print-prog-name=<prog>  Display the full path to compiler component <prog>
  -print-multiarch         Display the target's normalized GNU triplet, used as
                           a component in the library path
  -print-multi-directory   Display the root directory for versions of libgcc
  -print-multi-lib         Display the mapping between command line options and
                           multiple library search directories

  -print-multi-os-directory Display the relative path to OS libraries
  -print-sysroot           Display the target libraries directory
  -print-sysroot-headers-suffix Display the sysroot suffix used to find headers
  -Wa,<options>            Pass comma-separated <options> on to the assembler   汇编器 a
  -Wp,<options>            Pass comma-separated <options> on to the preprocessor   预处理器p
  -Wl,<options>            Pass comma-separated <options> on to thelinker            l是连接器,传递选项给连接器
  -Xassembler <arg>        Pass <arg> on to the assembler
  -Xpreprocessor <arg>     Pass <arg> on to the preprocessor
  -Xlinker <arg>           Pass <arg> on to the linker              传递参数给连接器
  -save-temps              Do not delete intermediate files
  -save-temps=<arg>        Do not delete intermediate files
  -no-canonical-prefixes   Do not canonicalize paths when building relative
                           prefixes to other gcc components
  -pipe                    Use pipes rather than intermediate files
  -time                    Time the execution of each subprocess
  -specs=<file>            Override built-in specs with the contents of <file>
  -std=<standard>          Assume that the input sources are for <standard>
  --sysroot=<directory>    Use <directory> as the root directory for headers
                           and libraries

  -B <directory>           Add <directory> to the compiler's search paths 这个很好啊        给编译器的搜寻路径添加路径
  -v                       Display the programs invoked by the compiler
  -###                     Like -v but options quoted and commands not executed
  -E                       Preprocess only; do not compile, assemble or link    -E仅仅需要预编译,但是不要编译、汇编或者链接。
  -S                       Compile only; do not assemble or link        -S只是编译,不要汇编或者链接
  -c                       Compile and assemble, but do not link    -c编译 编译并且汇编,但是不要链接
  -o <file>                Place the output into <file>    
  -pie                     Create a position independent executable   -pie创建一个位置无关的可执行程序
  -shared                  Create a shared library   创建一个共享库
  -x <language>            Specify the language of the following input files   
                           Permissible languages include: c c++ assembler none
                           'none' means revert to the default behavior of
                           guessing the language based on the file's extension


Options starting with -g, -f, -m, -O, -W, or --param are automatically
 passed on to the various sub-processes invoked by arm-linux-androideabi-gcc.  In order to pass
 other options on to these processes the -W<letter> options must be used.


For bug reporting instructions, please see:
<http://source.android.com/source/report-bugs.html>.
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 



===============================================================================================================




root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-sysroot-headers-suffix 
arm-linux-androideabi-gcc: fatal error: not configured with sysroot headers suffix
compilation terminated.

root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 




===============================================================================================================

   Display the target libraries directory

显示目标库的路径


 /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-sysroot  
/home/zhangbin/android/android-toolchain/r9-4.8/bin/../sysroot
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 


===============================================================================================================



当前路径啊
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-multi-os-directory
.
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 



===============================================================================================================



     Display the compiler's target processor  计算机的目标处理器


root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc -dumpmachine
arm-linux-androideabi
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3#



==============================================================================================

   Display the mapping between command line options and
                           multiple library search directories                    命令行选项和多个库的搜寻路径的映射

 root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-multi-lib 
.;
armv7-a;@march=armv7-a
thumb;@mthumb
armv7-a/thumb;@march=armv7-a@mthumb

root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 


 

==============================================================================================



  在计算机中的搜寻路径
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-search-dirs  
install: /home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/
programs: =/home/zhangbin/android/android-toolchain/r9-4.8/bin/../libexec/gcc/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../libexec/gcc/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/
libraries: =/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/lib/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/lib/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../sysroot/lib/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../sysroot/lib/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../sysroot/usr/lib/arm-linux-androideabi/4.8/:/home/zhangbin/android/android-toolchain/r9-4.8/bin/../sysroot/usr/lib/
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 



==============================================================================================

Display the name of the compiler's  companion library  计算机的同伴?指南库的名字???


root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc     -print-libgcc-file-name 
/home/zhangbin/android/android-toolchain/r9-4.8/bin/../lib/gcc/arm-linux-androideabi/4.8/libgcc.a
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 




==============================================================================================



  Display the target's  normalized GNU triplet, used as
                           a component in the library path

root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-multiarch  


root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 




 这是当前路径啊
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# /home/zhangbin/android/android-toolchain/r9-4.8/bin/arm-linux-androideabi-gcc   -print-multi-directory
.
root@Ubuntu32:/home/zhangbin/gstreamer/portglibtoandroid/glibwork/glib-2.34.3# 





 类似资料: