Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Rust Unlinked: Understanding Rustc, Symbols, and Static Libraries

Conf42 via YouTube

Overview

Explore the intricacies of Rust compilation, linking, and symbol management in this comprehensive conference talk from Conf42 Rustlang 2024. Delve into the compilation phases of Rust, including lexing, parsing, and code analysis. Examine intermediate representations, optimizations, and the LLVM code generation process. Gain insights into Rust's query-based compilation model and understand object files and object code. Follow along with practical experiments in Rust, exploring symbol mangling, compiling and linking object files, and using utilities like nm for symbol table analysis. Investigate the ELF file format, learn about manual linking with the ld linker, and discover how to handle linking errors. Explore the use of static libraries in Rust and the generation of LLVM IR. Conclude with valuable references for further study in Rust development and compilation processes.

Syllabus

intro
preamble
understanding linking in rust
compilation phases in rust
lexing, parsing, and code analysis
intermediate representations and optimizations
llvm and code generation
query-based compilation model
introduction to object files
introduction to object code
experimenting with rust
understanding the code example
exploring symbol mangling
compiling and linking object files
using nm utility for symbol table
examining elf file format
manual linking with ld linker
handling linking errors
using static libraries in rust
generating llvm ir
conclusion and references

Taught by

Conf42

Reviews

Start your review of Rust Unlinked: Understanding Rustc, Symbols, and Static Libraries

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.