초보의 아웅다웅 설계하기/Coocox

Coocox Misc Controls에서 지원하는 옵션 모음

로망와니 2018. 4. 9. 22:44

Coocox Misc Controls에서 --help;를 입력하면 나옵니다. 매뉴얼 없다고 계속 찾아다녔는데 이런 방법이.... 국내에서 들어오는 아이피를 막았는지 Coocox사이트에 접속이 불가능하네요.

이런 컴파일러를 써야하다니. ㅠㅠ

 

 

 

 Set architecture
        -a KEYWORD                  Shared library control for HP/UX compatibility
        -A ARCH, --architecture ARCH
        -b TARGET, --format TARGET  Specify target for following input files
        -c FILE, --mri-script FILE  Read MRI format linker script
        -d, -dc, -dp                Force common symbols to be defined
        -E, --export-dynamic        Export all dynamic symbols
        -e ADDRESS, --entry ADDRESS Set start address
        --no-export-dynamic         Undo the effect of --export-dynamic
        -EB                         Link big-endian objects
        -EL                         Link little-endian objects
        -f SHLIB, --auxiliary SHLIB Auxiliary filter for shared object symbol table
        -F SHLIB, --filter SHLIB    Filter for shared object symbol table
        -g                          Ignored
        -G SIZE, --gpsize SIZE      Small data size (if no size, same as --shared)
        -h FILENAME, -soname FILENAME
                                    Set internal name of shared library
                                    Search for library LIBNAME
        -l LIBNAME, --library LIBNAME
        --no-dynamic-linker         Produce an executable with no program interpreter header
                                    Set PROGRAM as the dynamic linker to use
        -I PROGRAM, --dynamic-linker PROGRAM
        -m EMULATION                Set emulation
        --sysroot=<DIRECTORY>       Override the default sysroot location
        -M, --print-map             Print map file on standard output
        -n, --nmagic                Do not page align data
                                    Add DIRECTORY to library search path
        -L DIRECTORY, --library-path DIRECTORY
        -N, --omagic                Do not page align data, do not make text readonly
        --no-omagic                 Page align data, make text readonly
        -o FILE, --output FILE      Set output file name
        -O                          Optimize output file
        -plugin PLUGIN              Load named plugin
        -plugin-opt ARG             Send arg to last-loaded plugin
        -flto                       Ignored for GCC LTO option compatibility
        -flto-partition=            Ignored for GCC LTO option compatibility
        -fuse-ld=                   Ignored for GCC linker option compatibility
        --map-whole-files           Ignored for gold option compatibility
        --no-map-whole-files        Ignored for gold option compatibility
        -Qy                         Ignored for SVR4 compatibility
        -q, --emit-relocs           Generate relocations in final output
        -r, -i, --relocatable       Generate relocatable output
        -R FILE, --just-symbols FILE
                                    Just link symbols (if directory, same as --rpath)
        -s, --strip-all             Strip all symbols
        -S, --strip-debug           Strip debugging symbols
        --strip-discarded           Strip symbols in discarded sections
        --no-strip-discarded        Do not strip symbols in discarded sections
        -t, --trace                 Trace file opens
        -T FILE, --script FILE      Read linker script
        --default-script FILE, -dT  Read default linker script
        -u SYMBOL, --undefined SYMBOL
                                    Start with undefined reference to SYMBOL
        --require-defined SYMBOL    Require SYMBOL be defined in the final output
        --unique [=SECTION]         Don't merge input [SECTION | orphan] sections
        -Ur                         Build global constructor/destructor tables
        -v, --version               Print version information
        -V                          Print version and emulation information
        -x, --discard-all           Discard all local symbols
        -X, --discard-locals        Discard temporary local symbols (default)
        --discard-none              Don't discard any local symbols
        -y SYMBOL, --trace-symbol SYMBOL
                                    Trace mentions of SYMBOL
        -Y PATH                     Default search path for Solaris compatibility
        -(, --start-group           Start a group
        -), --end-group             End a group
        --accept-unknown-input-arch Accept input files whose architecture cannot be determined
        --no-accept-unknown-input-arch
                                    Reject input files whose architecture is unknown
        --as-needed                 Only set DT_NEEDED for following dynamic libs if used
        --no-as-needed              Always set DT_NEEDED for dynamic libraries mentioned on
                                      the command line
        -assert KEYWORD             Ignored for SunOS compatibility
        -Bdynamic, -dy, -call_shared
                                    Link against shared libraries
        -Bstatic, -dn, -non_shared, -static
                                    Do not link against shared libraries
        -Bsymbolic                  Bind global references locally
        -Bsymbolic-functions        Bind global function references locally
        --check-sections            Check section addresses for overlaps (default)
        --no-check-sections         Do not check section addresses for overlaps
        --copy-dt-needed-entries    Copy DT_NEEDED links mentioned inside DSOs that follow
        --no-copy-dt-needed-entries Do not copy DT_NEEDED links mentioned inside DSOs that follow
        --cref                      Output cross reference table
        --defsym SYMBOL=EXPRESSION  Define a symbol
        --demangle [=STYLE]         Demangle symbol names [using STYLE]
        --embedded-relocs           Generate embedded relocs
        --fatal-warnings            Treat warnings as errors
        --no-fatal-warnings         Do not treat warnings as errors (default)
        -fini SYMBOL                Call SYMBOL at unload-time
        --force-exe-suffix          Force generation of file with .exe suffix
        --gc-sections               Remove unused sections (on some targets)
        --no-gc-sections            Don't remove unused sections (default)
        --print-gc-sections         List removed unused sections on stderr
        --no-print-gc-sections      Do not list removed unused sections
        --hash-size=<NUMBER>        Set default hash table size close to <NUMBER>
        --help                      Print option help
        -init SYMBOL                Call SYMBOL at load-time
        -Map FILE                   Write a map file
        --no-define-common          Do not define Common storage
        --no-keep-memory            Use less memory and more disk I/O
        --no-demangle               Do not demangle symbol names
        --no-undefined              Do not allow unresolved references in object files
        --allow-shlib-undefined     Allow unresolved references in shared libraries
        --default-symver            Create default symbol version
        --no-undefined-version      Disallow undefined version
        --allow-multiple-definition Allow multiple definitions
        --no-allow-shlib-undefined  Do not allow unresolved references in shared libs
        --default-imported-symver   Create default symbol version for imported symbols
        --no-warn-search-mismatch   Don't warn on finding an incompatible library
        --no-whole-archive          Turn off --whole-archive
        --no-warn-mismatch          Don't warn about mismatched input files
        -nostdlib                   Only use library directories specified on
        --noinhibit-exec            Create an output file even if errors occur
                                      the command line
        --oformat TARGET            Specify target of output file
        --print-output-format       Print default output format
        --print-sysroot             Print current sysroot
        -qmagic                     Ignored for Linux compatibility
        --reduce-memory-overheads   Reduce memory overheads, possibly taking much longer
        --relax                     Reduce code size by using target specific optimizations
        --no-relax                  Do not use relaxation techniques to reduce code size
        -rpath PATH                 Set runtime shared library search path
        --retain-symbols-file FILE  Keep only symbols listed in FILE
        -rpath-link PATH            Set link time shared library search path
        -shared, -Bshareable        Create a shared library
        -pie, --pic-executable      Create a position independent executable
        --sort-common [=ascending|descending]
                                    Sort common symbols by alignment [in specified order]
        --sort-section name|alignment
                                    Sort sections by name or maximum alignment
        --spare-dynamic-tags COUNT  How many tags to reserve in .dynamic section
        --split-by-file [=SIZE]     Split output sections every SIZE octets
        --split-by-reloc [=COUNT]   Split output sections every COUNT relocs
        --stats                     Print memory usage statistics
        --target-help               Display target specific options
        --task-link SYMBOL          Do task level linking
        --traditional-format        Use same format as native linker
        --section-start SECTION=ADDRESS
                                    Set address of named section
        -Tbss ADDRESS               Set address of .bss section
        -Tdata ADDRESS              Set address of .data section
        -Ttext ADDRESS              Set address of .text section
        -Ttext-segment ADDRESS      Set address of text segment
        -Trodata-segment ADDRESS    Set address of rodata segment
        -Tldata-segment ADDRESS     Set address of ldata segment
        --unresolved-symbols=<method>
                                      ignore-in-shared-libs
                                      ignore-all, report-all, ignore-in-object-files,
        --verbose [=NUMBER]         Output lots of information during link
                                    How to handle unresolved symbols.  <method> is:
        --version-script FILE       Read version information script
        --version-exports-section SYMBOL
                                    Take export symbols list from .exports, using
                                      SYMBOL as the version.
        --dynamic-list-data         Add data symbols to dynamic list
        --dynamic-list-cpp-new      Use C++ operator new/delete dynamic list
        --dynamic-list-cpp-typeinfo Use C++ typeinfo dynamic list
        --dynamic-list FILE         Read dynamic list
        --warn-common               Warn about duplicate common symbols
        --warn-constructors         Warn if global constructors/destructors are seen
        --warn-multiple-gp          Warn if the multiple GP values are used
        --warn-once                 Warn only once per undefined symbol
        --warn-section-align        Warn if start of section changes due to alignment
        --warn-shared-textrel       Warn if shared object has DT_TEXTREL
        --warn-alternate-em         Warn if an object has alternate ELF machine code
        --warn-unresolved-symbols   Report unresolved symbols as warnings
        --error-unresolved-symbols  Report unresolved symbols as errors
        --whole-archive             Include all objects from following archives
        --wrap SYMBOL               Use wrapper functions for SYMBOL
        --ignore-unresolved-symbol SYMBOL
                                    Unresolved SYMBOL will not cause an error or warning
        --push-state                Push state of flags governing input file handling
        --pop-state                 Pop state of flags governing input file handling
        --print-memory-usage        Report target memory usage
        --orphan-handling =MODE     Control how orphan sections are handled.
        @FILE                       Read options from FILE
       [cc] c:/program files (x86)/gnu tools arm embedded/5.2 2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: supported targets: elf32-littlearm elf32-bigarm elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex
       [cc] c:/program files (x86)/gnu tools arm embedded/5.2 2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: supported emulations: armelf
       [cc] c:/program files (x86)/gnu tools arm embedded/5.2 2015q4/bin/../lib/gcc/arm-none-eabi/5.2.1/../../../../arm-none-eabi/bin/ld.exe: emulation specific options:
       [cc] ELF emulations:
        --build-id[=STYLE]          Generate build ID note
        --compress-debug-sections=[none|zlib|zlib-gnu|zlib-gabi]
                                    Compress DWARF debug sections using zlib
                                     Default: none
        -z common-page-size=SIZE    Set common page size to SIZE
        -z max-page-size=SIZE       Set maximum page size to SIZE
        -z defs                     Report unresolved symbols in object files.
        -z muldefs                  Allow multiple definitions
        -z execstack                Mark executable as requiring executable stack
        -z noexecstack              Mark executable as not requiring executable stack
        --audit=AUDITLIB            Specify a library to use for auditing
        -Bgroup                     Selects group name lookup rules for DSO
        --disable-new-dtags         Disable new dynamic tags
        --enable-new-dtags          Enable new dynamic tags
        --eh-frame-hdr              Create .eh_frame_hdr section
        --exclude-libs=LIBS         Make all symbols in LIBS hidden
        --hash-style=STYLE          Set hash style to sysv, gnu or both
        -P AUDITLIB, --depaudit=AUDITLIB
       [cc]          Specify a library to use for auditing dependencies
        -z combreloc                Merge dynamic relocs into one section and sort
        -z global                   Make symbols in DSO available for subsequently
       [cc]           loaded objects
        -z nocombreloc              Don't merge dynamic relocs into one section
        -z initfirst                Mark DSO to be initialized first at runtime
        -z interpose                Mark object to interpose all DSOs but executable
        -z lazy                     Mark object lazy runtime binding (default)
        -z loadfltr                 Mark object requiring immediate process
        -z nocopyreloc              Don't create copy relocs
        -z nodefaultlib             Mark object not to use default search paths
        -z nodelete                 Mark DSO non-deletable at runtime
        -z nodlopen                 Mark DSO not available to dlopen
        -z nodump                   Mark DSO not available to dldump
        -z now                      Mark object non-lazy runtime binding
        -z origin                   Mark object requiring immediate $ORIGIN
       [cc]     processing at runtime
        -z relro                    Create RELRO program header
        -z norelro                  Don't create RELRO program header
        -z stacksize=SIZE           Set size of stack segment
        -z text                     Treat DT_TEXTREL in shared object as error
        -z notext                   Don't treat DT_TEXTREL in shared object as error
        -z textoff                  Don't treat DT_TEXTREL in shared object as error
        --thumb-entry=<sym>         Set the entry point to be Thumb symbol <sym>
       [cc] armelf:
        --be8                       Output BE8 format image
        --target1-rel               Interpret R_ARM_TARGET1 as R_ARM_REL32
        --target1-abs               Interpret R_ARM_TARGET1 as R_ARM_ABS32
        --target2=<type>            Specify definition of R_ARM_TARGET2
        --fix-v4bx                  Rewrite BX rn as MOV pc, rn for ARMv4
        --fix-v4bx-interworking     Rewrite BX rn branch to ARMv4 interworking veneer
        --use-blx                   Enable use of BLX instructions
        --vfp11-denorm-fix          Specify how to fix VFP11 denorm erratum
        --fix-stm32l4xx-629360      Specify how to fix STM32L4XX 629360 erratum
        --no-enum-size-warning      Don't warn about objects with incompatible
                                      enum sizes
        --no-wchar-size-warning     Don't warn about objects with incompatible
                                      wchar_t sizes
        --pic-veneer                Always generate PIC interworking veneers
        --long-plt                  Generate long .plt entries
                                    to handle large .plt/.got displacements
        --stub-group-size=N         Maximum size of a group of input sections that
                                     can be handled by one stub section.  A negative
                                     value locates all stubs after their branches
                                     (with a group size of -N), while a positive
                                     value allows two groups of input sections, one
                                     before, and one after each stub section.
                                     Values of +/-1 indicate the linker should
                                     choose suitable defaults.
        --[no-]fix-cortex-a8        Disable/enable Cortex-A8 Thumb-2 branch erratum fix
        --no-merge-exidx-entries    Disable merging exidx entries
        --[no-]fix-arm1176          Disable/enable ARM1176 BLX immediate erratum fi

 

 

기타

#if defined(_WIN32)//윈도우
#define Window 1
#elif defined(__IAR_SYSTEMS_ICC__) //IAR
#define IAR 2
#elif defined(__CC_ARM) //Keil
#define KEIL 3
#elif defined(__GNUC__)//GCC, Coocox
#define GCC 4 

#endif