Why you should be developing on Gentoo*
Developers often want to use the latest and greatest development tools and libraries to develop against, and running Gentoo's testing versions (like any good development distribution) allows you to keep all these tools and libraries under package management. It additionally provides a powerful set of tools for a development machine and gives you unmatched power and flexibility coupled with the ease of package management.
Developers often want to use the latest and greatest development tools and libraries to develop against, and running Gentoo’s testing versions (like any good development distribution) allows you to keep all these tools and libraries under package management.
Gentoo provides a powerful set of tools for a development machine. Since it’s a source-based distribution, it comes by default with the full toolchain and related tools (autotools, flex, bison, etc). Furthermore, the packages are not split up, so if you have a package installed, you have all of that package: no searching around for -devel, -headers, -debuginfo, or whatever else.
To set up a decent development system, you often want to install debugging versions of a lot of libraries and maybe even install the source code too. Gentoo provides for that with features that install separate debuginfo files that are automatically found by gdb and that will also install the source code.
On a lower level, you might want to make sure your code compiles on a wide variety of compilers before shipping or releasing it. Gentoo’s gcc-config lets you dynamically switch between multiple installed compilers, and you can even use non-GCC compilers for Gentoo packages by simply setting CC in /etc/make.conf or the environment.
Gentoo supports cross-compiling quite nicely with a tool called crossdev that integrates with Portage to make building cross-compiling toolchains completely trivial. All you have to do is pass crossdev the target and it takes care of the rest.
The last, most advanced and possibly most useful aspect of Gentoo for development is the ease of packaging your code. Writing ebuilds is just writing bash shell scripts. If you can build it by hand, you can make an ebuild for it. This makes it much easier to deal with obscure dependencies that you would compile and install by hand on other distributions — on Gentoo, you can trivially write a package and gain all the benefits of package management.
Donnie has vast experience at all levels of architecture and leadership at Gentoo Linux, where he’s spent 6 years helping to build a Linux distribution of more than 250 dedicated people and maintains nearly 400 packages.
- Title: Assholes are killing your project
- Track: Culture
- Room: Hawthorne
- Time: 3:50 – 4:35pm
The strength of your community is the best predictor of your project’s long-term viability. What happens when your community is gradually infiltrated by assholes, who infect everyone else with their constant negativity and personal attacks? This talk will teach you about the dramatic impact assholes are having on your organization today and will show you how you can begin to repair it.
- Speakers: Donnie Berkholz