awl compiles under APE with a little work. someone, sorry I have forgotten who, did Stirling work a few years ago and got many Linux tools ported - to support 3rd party stuff. to my chagrin I never managed to get avn to work on top of this. the code was in Google code I think, his porting instructions should work for the latest gawk too. if not put the code somewhere and I will have a go. -Steve > On 11 Mar 2015, at 21:04, Ryan Gonzalez wrote: > > Warning: this will get messy *fast*. > >> On Wed, Mar 11, 2015 at 3:30 PM, Aharon Robbins wrote: >> Thanks for the link to the Google code repo. >> >> I'm currently on x86_64 Ubuntu 12.04. Building was not so smooth, several >> files are missing for the Power 64 port. > > Yup. Comment out the lines in the mkfiles. In src/cmd/mkfile, I commented out lines 34-36. > > I think you already need mk installed; you can grab it from here. > >> >> I did as best I could to build things. I suppose my expectations aren't >> what they should be. I was looking for the usual >> >> configure && make && make install >> >> experience, and it wasn't there. I like to compile gawk with multiple >> compilers and thought I'd try ken's, but it wasn't clear to me which >> o.out file to use, or how to install it such that it will get the >> system's include files and libraries. >> > > I doubt the Plan 9 compilers will even get *close* to building gawk. > > See, the compilers implement a variant of ANSI C with some C99-ish extensions. For once, the preprocessor does not work with #if's. You can only use #ifdef's. > > Because of this, 99% of the C standard library headers will NOT work with the compilers. > > Another issue is that it seems that the linker does not read ELF files, so linking with about anything is out of the question. > > As for the compilers you need to invoke... > > The directories in src/cmd are formatting like nc, na, and nl, where the *c ones are the compiles, *a, the assemblers, and *l, the linkers. > > The executable is at src/cmd//o.out. For Ubuntu 64-bit, you'll want src/cmd/6c/o.out to compile and src/cmd/6l/o.out to link. Or, at least you would...if the files weren't missing. Since half of them are, you'll instead want src/cmd/8c/o.out to compile and src/cmd/8l/o.out to link. Those are the 32-bit compilers. > > I set up symlinks in ken-cc/bin using bin/8c as an alias for src/cmd/8c/o.out. Same thing for 8l. > > The command lines look something like: > > 8c tst.c # outputs tst.8 > 8l -o tst tst.8 # outputs tst > > Bottom line: you may be out of luck if you want to use ken-cc as a general-purpose C compiler. It isn't. At all. > > It's fun to toy with, though. > > Go had vastly better versions, but it seems they got ripped out recently. I think Go 1.3 may have had them, in which case you'd do something like: > > go tool 6c tst.c > go tool 6l -o tst tst.6 > > As you can see, Go actually had a working 64-bit compiler. > > I have yet to figure out why the hell symlinks to the compilers never get set up in the bin directory. > >> If this is easy to do, I'd appreciate hearing how. If not, then I'm not >> going to worry about it. :-) >> >> Much thanks, >> >> Arnold >> > > > > -- > Ryan > [ERROR]: Your autotools build scripts are 200 lines longer than your program. Something’s wrong. > http://kirbyfan64.github.io/