Paloş::Code.Blog()

Thoughts about high architecture and sheer speed.

Archive for the ‘Compiling’


Scripts for LOUT Typesetting System

It’s been a while since I started using the Lout document preparation system in favor of LaTeX. It has a number of advantages like: greatly decreased size (a few Megs compared with the 50 or 100 Megs of TeX distros), higher-level, better looking code etc. Only recently I started considering using Lout as a document generator (like reports) for a software I’m writing (the software generates Lout source code that is passed through Lout and other programs to produce superbe PostScript and PDF files).

And so, because of some issues I encountered, I wrote a couple of short scripts to overcome what I believe are the two most important shortcomings of the Lout typesetting system. (more…)

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!

D environment installer (v0.0.3/v0.0.2)

Here are new versions of the D environment installer based on DMD and GDC. This version adds the PATH changes to “.bashrc” too so that the PATH is also changes for normal logins (not only for shell logins as was the case before). (more…)

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!

Something about D Templates

Sumbled across a nice blog entry about D Templates (which are really cool by the way).

Check it out here!

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!

APF Firewall on Ubuntu 7.xx (0.9.6-2)

ATTENTION!!!
This article is outdated! Go here! for the updated patches and information.

APF Firewall is a great firewall solution for Linux. It’s small, really easy to install and configure and it also provides antidos, which is a tool that monitors possible attacks on the server and takes same action. The problem is that the install script is made for RedHat based Linux distro’s and does not work straight away on Debian based ones.

So here is a patch that, when applied to the apf source directory (tested with version 0.9.6-2), will make it install properly under Ubuntu (it’s tested on Feisty and Gutsy but it should actually work on many other types of Ubuntu or even Debian - I have not tested this). (more…)

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!

D environment installer (reloaded)

I decided (after writing the last post on this subject) that it is much more feasible to simply continue working on my install scripts rather than on the tutorial itself. With your help (I hope) I will be able to improve them and make run correctly on systems other than Ubuntu 7.04 (Feisty). So here they are:

D based on DMD under Linux Ubuntu 7.04 (Feisty)
Download script

D based on GDC under Linux Ubuntu 7.04 (Feisty)
Download script

Make sure you have the following requirements installed before running any of the scripts (other packages may be required):

  • curl
  • wget
  • svn
  • for the GDC script: gcc build tools (build-essential under Ubuntu)

Enjoy!

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!

Setting up a proper D working environment

We all know that D is not yet a very mature platform (although it is making steps quickly into the right direction). Because of that, it is not that easy to setup a working (or development) environment. Here are my efforts to clarify the situation. The difficulty in reaching this goal lies mainly in the incompatibilities between libraries and compiler versions (or implemented features).

I will try to show how I managed to install a (more or less) complete working environment for D under Linux using either DMD or GDC. These two compilers each have their pros and cons: DMD is more stable and has the latest features integrated, while GDC is completely open source. By “complete” I mean the following packages were installed and running smoothly (I won’t loose time to justify why I wanted each one - they simply make sense to have, pretty much all the time - in no particular order):

1. DSSS 0.71 (D Shared Software System) - link.
2. DMD 1.018 - link / GDC 0.24 / rev.146 (GCC 4.1.2) - link.
3. Tango rev.2500 (The modern standard library for D) - link.
4. Tangobos rev.15 (Phobos and Tango compatibility layer) - link.
5. Mango rev.1037 (Network programming library) - link.
6. DDL rev.285 (Dynamic run-time linking of executables) - link.
7. DDBI rev.59 (D DataBase Interface) - link.

(more…)

Add to Technorati FavoritesEnjoyed this post?, why not subscribe to the RSS feed!