Archive for September, 2008

FOSS4G 2008, I can’t make it

Sunday, September 28th, 2008

…school, job, trips, move, army, school, move, new job…lots of things have been happening in my life with speed of light, so I’ve had to change most of my plans, especially those about traveling. And, I can’t make it to attend the FOSS4G 2008 conference.

Nevertheless, I’m still listed next to two positions of the conference program and that’s correct. I planned to help Frank Warmerdam during the Raster Processing and Preparation with GDAL workshop and to give one presentation - Introduction to ASPRS LAS data processing with libLAS.

Apparently, I won’t be able to assist Frank during the workshop - I’m sorry Frank! and I’m crossing my fingers for you. And, the libLAS presentation will be given by…Frank - crossing my fingers harder :-) Originally, I promised Frank I will provide him with presentation slides and I’ll be a virtual assistant. Actually, I failed even with that :-(

Fortunately, Hobu took over this task and prepared PDF document with a set of fantastic slides. Frank and Howard have really saved my ass and I’d like to send them veeery big thanks!

I regret I can’t come to Cape Town, to experience the fantastic atmosphere, to see hundreds geogeeks together, to have a great time with friends and to drink a little too much beer with Tim. See you guys in Sydney, 2009!

Linux.com about GeoServer

Friday, September 26th, 2008

Linux.com published an interesting article - a tutorial - about famous components of Free and Open Source Software stack for Web Mapping. Justin Palk, the author, gives a very accessible introduction to building Web Mapping solution using GeoServer, PostGIS and OpenLayers. I think it’s a great writing for anyone who takes first steps in Web Mapping with FOSS4G.

Serving and styling maps with GeoServer by Justin Palk on September 24, 2008

Visual C++ Toolkit 2003 still in use

Monday, September 22nd, 2008

Charles Petzold's TattooIn 2004, Microsoft published Visual C++ Toolkit 2003 - full version of Visual C++ 2003 optimizing compiler (version 1310) available free of charge. It was the first free, good and almost complete implementation of C++ programming language by Microsoft. It is quite old but still used by many developers.

The Toolkit is fairly complete, but you can not avoid a few hacks if you want to use it :-) So, I’ve decided to collect them all in one place to help building projects like GEOS, libLAS or GDAL/OGR with the Visual C++ Toolkit 2003.

Installation

First, installation of the following packages is required:

  1. Microsoft .NET Framework SDK 1.1
  2. Microsoft Platform SDK for Windows Server 2003 R2
  3. Microsoft Visual C++ Toolkit 2003 (no longer available from Microsoft website, just be persistent cuiling for it)

Hacks

This is list of hacks like installation of missing components and fixing a project makefiles:

  1. The .NET Framework SDK 1.1 installation (listed above) is required in order to get C Run-Time libraries installed: msvcrt.lib and msvcrtd.lib. The .NET SDK installer will copy these files (and a few other components) to directories located in:

    C:\Program Files\Microsoft Visual Studio .NET 2003
    
  2. Surprisingly, import library for C++ Run-Time Library msvcp71.dll is not included in the Visual C++ Toolkit 2003 distribution. Missing files can be downloaded from CERN server: msvcprt.lib and msvcprt.def. Copy them into

    C:\Program Files\Microsoft Visual C++ Toolkit 2003\lib
    
  3. The Toolkit does not include lib.exe utility - Microsoft Library Manager. Fortunately, lib.exe is just a simple wrapper on Microsoft Incremental Linker - link.exe. So, in your NMAKE makefiles replace lib.exe (or lib) command with:

    link.exe /lib
    

    Alternatively, you can build custom lib.exe wrapper using lib.c program. Recently, I’ve fixed NMAKE makefiles of GEOS (r2190) and libLAS (r876) projects using the former option.

Environment

Most of articles about Visual C++ Toolkit 2003 and Platform SDK installation procedure suggest to permanently update environment variables like INCLUDE, LIB and PATH. Personally, I don’t like this approach. Instead, I write a simple SET_MSVC71.BAT script which I execute in console window before I run NMAKE to build a software project using Visual C++ Toolkit 2003.

The script I use consists of three commands:

@echo off
CALL "C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\SetEnv.Cmd"
CALL "C:\Program Files\Microsoft Visual C++ Toolkit 2003\vcvars32.bat"
CALL "C:\Program Files\Microsoft.NET\SDK\v1.1\Bin\sdkvars.bat"

Copy this script to location that is available from the PATH.

Sample build - libLAS

Below, a few simple steps are presented of using Visual C++ Toolkit 2003 and environment configured as presented above to build libLAS project. The same procedure should work for projects like GEOS or GDAL/OGR.

  1. Run Command Prompt (cmd.exe)
  2. Configure environment by executing SET_MSVC71.BAT script:

    C:\> SET_MSVC71.BAT
    

    Check if basic commands are available: cl.exe, nmake.exe, link.exe.

  3. Go to libLAS source code directory:

    C:\> cd dev\liblas\trunk
    
  4. Run NMAKE command to build libLAS library and utilities:

    C:\dev\liblas\trunk> nmake /f makefile.vc
    

Good luck!

Wavelet Transform Software 2.04

Sunday, September 21st, 2008

GDAL logoThis post should be interesting to users of GDAL MSG driver - Meteosat Second Generation.

In July 2008, by the way of doing GDAL MSG driver cleanup, I’ve also applied a few fixes to the Public Wavelet Transform Decompression Library (aka Wavelet Transform Software) developed by EUMETSAT. I patched WT version 2.03 and sent my fixes to EUMETSAT.

Recently, I’ve got a message from EUMETSAT they approved the patch and will include it in upcoming release of the Wavelet Transform Decompression Library. Actually, new version 2.04 has been already published and is available to download (after registration) from the EUMETSAT website.

Modification of the source code to support a newer version of gcc compiler. gcc 4.2.x and previous versions are now supported. Upgrade fixes kindly provided by Mateusz Loskot.

Modified files with respect to previous version: CImage.h, CJBlock.h, CJBlock.cpp

It’s really nice to see my work wasn’t a waste of time :-)

C++ Committee Needs You

Friday, September 12th, 2008

JTC1/SC22/WG21 - The C++ Standards CommitteeToday, Bronek Kozicki - a member of BSI C++ panel - shared some bad news on ACCU mailing list, about sponsorship problems of WG21 meeting in March 2009:

I just learned that original sponsor of this meeting backed out, leaving guys from EDG not only with organizational tasks, but also financial burden.

So, Bronek has also put out call for help to all interested parties:

Therefore, it would really nice if those of ACCU members who are working in large companies (and which also happen to utilize C++ to great extent) could pass a message up the management chain that sponsoring ISO/IEC committee meeting is unusual and very prestigious PR opportunity. Sponsors of past meetings include Intel, Microsoft and Google, among other IT giants; unfortunately EDG is only giant in intelectual sense.

If your managers find this opportunity compelling, please contact them with J. Stephen Adamczyk (jsa (at) edg (dot) com).