pkgsrc wrap up

I thought I would post a wrap up of my pkgsrc trials and tribulations. This is a set of instructions on how to get pkgsrc as well as some comments on what does and doesn’t work. Hopefully this will prove useful to somebody.

Getting pkgsrc:

You will need a Foundry27 account. Start at community.qnx.com/sf/sfmain/do/home and click on “Joinâ€

I recall quite a bit of fussing to get things going. pkgsrc is definitely not a load and go system, but it was much better than the usual downloading of each open source archive and recursively trying to compile each one.

LOTS of things don’t work because they depend on autoconf which depends on Perl:

I don’t recall a lot of trouble compiling:
OpenSSL
Python
ncurses (I needed to because the QNX version was missing a routine)
autoconf
Ruby
MySQL

The biggest headache was getting the .so version of php to work with Apache 2.2, which I documented elsewhere.

Again, they all depended on Perl, and Perl wouldn’t compile. I don’t know why, and I don’t know how you managed to get around it. Perhaps you used the pre-compiled version like I ended up doing? This still begs the question of how QSSL (or whoever) managed to pre-build it.

These failed for me. So now we have to wonder what’s different. This is a general problem with pkgsrc, autoconf, configure scripts, and just about every other cross-platform automated build system. When stuff doesn’t work it’s virtually impossible to find out why. That argument sounds a lot like the complaint against any code generator or even some higher-level languages, but I don’t think it’s NECESSARILY the case that automatic code generation doesn’t work. It’s just that configure scripts tend to be impossible to edit, and produce impossible-to-edit Makefiles, and there’s no stepwise debugger, and if you have to be a master of configure and make in order to build something what exactly was the point of having the configure script in the first place? I find configure especially annoying because I’d bet money that 90% of the “checking for” messages are utterly unnecessary.

Also, maschoen, thanks for replying.

-James Ingraham
Sage Automation, Inc.

James,

I agree about a lot of what you say.  I find the intricacies of Autoconf and Automake inpenetrable.   There's nothing more absurd then to try to debug a 100,000 line script.   At one point I found that the QNX scripts weren't working properly, and that just by removing one I could get a compile.   If you need a recently compiled working ruby or MySQL, just let me know at [maschoen@pobox.com](mailto:maschoen@pobox.com)