Hi all, I've dropped by in the IRC channel once or twice but that's unreliable, so I thought that I'd send an e-mail to the list, as well. I discovered suckless through stali a week ago when I was searching for information on statically building WebKit browsers for--believe it or not--a new, all-statically linked, uClibc-based distro that I've been working on in private for the past month or two. I wanted to give a shout out to the stali developers (and in general to suckless, I really like your projects and attitude) and to offer whatever limited services or knowledge that I might have.
To be honest, however, I've almost abandoned my distro project because of one last stumbling block: how to build a static web browser binary. There are many that claim to have "static builds" (e.g., Seamonkey, Opera, WebKit browsers), but those still rely on the dynamic library loader to bring up X11 and assorted libs (only the web browser engine is built into the binary). My question is if anyone has had luck in getting a browser like surf to build as a _truly_ static binary and if they could share the secrets of their success with me. I've tried hacking around in WebKit on and off for about a month, and I think the last segfaults that I got while trying to run the included sample GtkBrowser had to do with calls to dlopen, so I'm totally lost. I also tried a compromise. Right now, I'm putting all binaries in /bin (like stali) and all config files in individual program directories under /etc/programs (like Windows, in theory), so I tried to build individual toolchains for each program under /etc/programs/foobar and set the lib/include paths and rpaths to the appropriate directories in GCC's specs file. Thus, dynamic libraries would still be used, but at least they would be duplicated, independent, and isolated for each program that needed it. Unfortunately, either due to my inexperience or perhaps more likely some unfortunate hardcoded assumptions about /lib or /usr/lib, I keep getting an error from the dynamic lib loader about libcairo, "can't handle reloc type 0xe in lib". Any ideas here would be greatly appreciated. Best, Ersin -- What Digital Revolution? -- www.whatdigitalrevolution.com Thinking critically about digital worlds.