📄 compilers_and_assemblers.html
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html><head> <title></title> <link rel="stylesheet" media="screen" type="text/css" href="./style.css" /> <link rel="stylesheet" media="screen" type="text/css" href="./design.css" /> <link rel="stylesheet" media="print" type="text/css" href="./print.css" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /></head><body><a href=start.html>start</a></br><h2><a name="compilers_and_assemblers" id="compilers_and_assemblers">Compilers and Assemblers</a></h2><div class="level2"><p> The Blackfin toolchain consists of several utilities which accomplish the basic tasks required to create executable programs, compiling, assembling, and linking and can output files in two different formats:</p><ul><li class="level1"><div class="li"> Flat Files - To create a flat file, first standard C code is converted into Blackfin assembly code by the compiler, <code>bfin-uclinux-gcc -Wl,-elf2flt</code>. The assembler, <code>bfin-uclinux-as</code>, then takes this code and creates Executable and Linkable Format (ELF) object files. These ELF files are linked together by the utility <code>bfin-uclinux-ld</code> or included in an archive library by the utility <code>bfin-uclinux-ar</code>. The ELF files must then be converted into a binary format compatible with uClinux. This conversion is done by the utility <code>bfin-uclinux-elf2flt</code> which converts ELF files into <code><em>flat</em></code> binary format files.</div></li><li class="level1"><div class="li"> ELF Files - To create a ELF File, first standard C code is converted into Blackfin assembly code by the compiler, <code>bfin-elf-gcc -mfdpic</code>. The assembler, <code>bfin-uclinux-as</code>, then takes this code and creates Executable and Linkable Format (ELF) object files. These ELF files are linked together by the utility <code>bfin-uclinux-ld</code> or included in an archive library by the utility <code>bfin-uclinux-ar</code>. These ELF files can then be run directly on the hardware.</div></li></ul><p> <code>-Wl-elf2flt</code> </p><p>The way in which the compiler controls the assembler, linker, and archiver depends on the source input files and the compiler options used. </p><p>Information and the latest releases of the Blackfin Tool Chain can be found <a href="http://blackfin.uclinux.org/frs/?group_id=18" class="urlextern" title="http://blackfin.uclinux.org/frs/?group_id=18" rel="nofollow">here</a>. If you have any questions about the Tool Chain please ask them <a href="http://blackfin.uclinux.org/forum/?group_id=18" class="urlextern" title="http://blackfin.uclinux.org/forum/?group_id=18" rel="nofollow">here</a>. </p><ul><li class="level1"><div class="li"> <a href="gcc_and_gas.html" class="wikilink1" title="gcc_and_gas.html">gcc and gas</a></div></li><li class="level1"><div class="li"> <a href="cross_compiling.html" class="wikilink1" title="cross_compiling.html">Cross Compiling</a></div></li><li class="level1"><div class="li"> <a href="installing_the_blackfin_tool_chain.html" class="wikilink1" title="installing_the_blackfin_tool_chain.html">Installing the Blackfin Tool Chain</a></div></li><li class="level1"><div class="li"> <a href="linking.html" class="wikilink1" title="linking.html">Linking</a></div></li><li class="level1"><div class="li"> <a href="assembling.html" class="wikilink1" title="assembling.html">Assembling</a></div></li><li class="level1"><div class="li"> <a href="warning_and_error_messages.html" class="wikilink1" title="warning_and_error_messages.html">Warning and Error Messages</a></div></li><li class="level1"><div class="li"> <a href="include_files.html" class="wikilink1" title="include_files.html">Include Files</a></div></li><li class="level1"><div class="li"> <a href="toolchain_libraries.html" class="wikilink1" title="toolchain_libraries.html">Toolchain Libraries</a></div></li><li class="level1"><div class="li"> <a href="using_in-line_assembly_calling_external_assembly_from_c.html" class="wikilink1" title="using_in-line_assembly_calling_external_assembly_from_c.html">Using In-line Assembly, calling external Assembly from C</a></div></li><li class="level1"><div class="li"> <a href="special_blackfin_features.html" class="wikilink1" title="special_blackfin_features.html">Special Blackfin Features</a></div></li><li class="level1"><div class="li"> <a href="making_the_blackfin_perform.html" class="wikilink1" title="making_the_blackfin_perform.html">Making the Blackfin Perform</a></div></li><li class="level1"><div class="li"> <a href="toolchain_build_script.html" class="wikilink1" title="toolchain_build_script.html">Toolchain Build Script</a> (build toolchain from source)</div></li><li class="level1"><div class="li"> <a href="testing_the_toolchain.html" class="wikilink1" title="testing_the_toolchain.html">Testing the Toolchain</a></div></li></ul></div></body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -