Скачиваю архивы в один каталог, раскрываю по очереди, в свои подкаталоги. Потом собираю сборочным скриптом, который лежит в том же каталоге. Если в нем подправить цифры, то будет работать и с другими версиями.
Никаких хитрых префиксов не использовал, да они не всегда и работают. Например, если configure считает, что X-ов нет, то все префиксы на эту тему ему по барабану, руками это не управляется. А он будет считать, что нет X-ов, поскольку лежат они в нестандартном месте - /usr/X11R7 (это касается не только e17, но и многих других программ с графикой). Выход - или наделать ссылок или тупо скопировать Xы в /usr/lib, /usr/bin и т.д. Это нужно только на время компиляции, потом эту сохраненку можно убить.
Ещё помню, что у меня не собиралось с giflib 5... потребовалась giflib 4.2.1
После сборки смотрим лог и вытаскиваем то, что получилось из /initrd/pup_rw/usr, ну ещё в /initrd/pup_rw/etc можно заглянуть на всякий случай.
Полученный бинарный пакет обрабатываем new2dir или ещё как-нибудь.