[ Main Page ]
Development Info
I've released three tools related to this project under the GPL.
- libpdb - Simple Write-Only PDB file generation classes
- libelement - VEC question pool element parser/converter classes
- libmisc - Miscellaneous stuff. The XML parser and a crappy getopt()
for Win32 is in here.
- pveconv - Utility that uses both libraries to convert VEC question
pool text files to XML and PDB (for PalmVE) formats. Also handles converting
PNG graphic files into a figure database.
- pvecol - Utility that converts specially formatted XML files into
PalmVE databases containing collections of test templates and ARRL Review
Questions.
All three utilities build on linux and on windows. System requirements are as follows:
Linux/Cygwin:
- GNU/g++ & make - With GNU g++ and GNU make you can probably build the
components on most anything. Tweaks are likely to be required when not on a stock
glibc2/gcc3.x linux box.
- libexpat - XML parser. I'm using 1.95.5 but most versions should work.
- libgd - PNG/graphics library. I have 1.8.4, but it shouldn't matter
as long as your system's libgd supports PNG files. PNG/GD support IS optional
if you don't want to build it. It is only used to convert figure PNGs into a
format the PalmVE application can understand.
Windows:
- Dev Studio - It might build under cygwin but I have not tried it. I have VS.NET,
6 would work but you'd need to generate your own project files and have a recent platform
SDK installed.
- MSXML2 - As long as you have a reasonably recent version of IE you should be fine
here. If you have VS.NET then the MSXML2 header files are bundled with your compiler so
you should be able to build it too. If you DON'T have MSXML2, install the most recent
one. (4 right now I think)
- GDI+ - This is standard on XP and available as a redistributable for earlier
versions of Win32. You should be able to find it on microsoft's website somewhere. You can
turn off GDI+ support by removing a preprocessor definition. This is only required to
process the PNG figure files for PalmVE.
If you're just trying to convert a new question pool for PalmVE and you're running
windows then you can download a prebuilt version of pveconv here,
if you're using linux you'll need to download the source and build it. A prebuilt is also
available for Win32.
To process a text file pool into a PDB file for PalmVE, run:
pveconv -Tp ./file.txt
This will generate the PDB and the figure PDB if any figures are referenced (and you have
the PNGs in the graphics directory). You may need to set a graphics directory with -g if you
aren't using my directory tree so that it can find the PNGs.
If you're trying to go to XML, use -Tx and
-Xp to go from XML to PDB. The makefiles in the distribution
convert the text into XML and the XML into PDB, thus, it is a two pass process.
pvecol is the tool to use to change XML into ARRL review question or test template
PDB files. If you want to make an ARRL review question PDB, model it after the existing
one for the extra class manual and you shouldn't have any trouble. Invoke pvecol as such:
pvecol -a ./file.xml
To make generic test template PDBs, omit the -a. The XML is the same except that you
should not use category tags. They'll be ignored if you do.
Get the source tarballs here (this includes the pool text files and image PNGs):
palmve-tools-0.9.6.tgz
The source is setup with autoconf, but it does not use automake. It might build okay
on anything with a gcc, but I've only tried it on linux and cygwin. Run ./configure and
make as usual, note that there is no install make target. The binaries get put into
./bin and the data into ./data/pools and ./data/collections.
To build release versions run - make release=1 - release
and debug versions of everything can live in the same tree.
If you're using windows there's a VC7 (VS.NET) solution file in the src subfolder. I don't
use VC6 any longer so I can't reasonably keep up .dsp/.dsw files for them. Sorry. Cygwin
builds should work, though you may find a C++-ism with the expat header file and the
XML_Status enum. If it errors out here, move the enum above the initial reference.
Changes
- 0.9.6: Sun Feb 18 18:24:35 EST 2007
- Various updates to parse newer pool text files.
- 0.9.5: Mon Nov 1 00:14:20 PST 2004
- Support autoconf
- Support generating compressed pool files. This is done with a simple Huffman
encoding.
- 0.9.4: Sat Nov 15 23:17:59 PST 2003
- pveconv didn't change, pvecol was added to create test template and ARRL
review question PDB files.
- 0.9.3: Thu Jun 19 20:22:05 PDT 2003
- Pure application release. No significant tool changes.
- 0.9.2: Sat May 24 00:12:44 PDT 2003
- First development tools release