To build any component, the whole package source code must be unpacked, because many headers are shared among components. The best way to build NT acquisition server is to export source directory via Samba.
Table 5-1. System requirements
| Acquisition server | Windows NT |
| Visual C++ 5.0 (4.2 is buggy for that) | |
| "Mpegator" video board SDK | |
| "Text grabber" to read closed captions - it should be connected to the serial port | |
| Database server | Java |
| JDBC and any database (I use freeware PostgreSql) | |
| Push server | Unix |
| C++ | |
| Client | Unix |
| C++ | |
| GTK+ GUI toolkit (see release notes for version requirements) | |
| Gtk-- C++ front-end to GTK+ | |
| MpegTV SDK |
Preparation steps
To install database server you need Java, JDBC driver and any database. The source code and Makefile assume that the default database is postgresql, but that is not important.
The default Makefile assumes that JDBC driver is unpacked as $(HOME)/jdbc
It is convenient to create directory $(HOME)/classpath where compiled Java bytecode will be stored. Upon successful build, the jdbc driver will appear as $(HOME)/classpath/postgresql.jar and database server as $(HOME)/classpath/VideoServer.jar. The environment variable CLASSPATH should contain $(HOME)/classpath/VideoServer.jar and $(HOME)/classpath/postgresql.jar.
Make the "log" directory where database server will store the log file.
Make sure that postgresql is working. Don't forget to setup environment variables PGLIB and PGDATA. There is an error in postgresql-6.4.2-4.rpm for Linux: it setup PGLIB into "/usr/lib/" instead of "/usr/lib/pgsql". Create the postgresql user account: execute "$ createuser videoserver" under user "postgres". Create the default database "videoservertest": execute "$ createdb videoservertest" under videoserver account.
Init default database with the conmmand "psql -f tools/ClearDB.source videoservertest". Check for errors.
Test that database server works: compile and start it with the command "make test". If everything's fine, you should get the prompt "Enter superuser password>". This is not a request for system root password! This is a prompt to specify the superuser password for remote administration. Type any buzzword, like "abcd".
Then open another terminal window and connect the server default port: "telnet localhost 7077". You should get the prompt "Video Server, Connection established, >>>". At this point you may type any protocol command, specified in file TextProtocol.java. Type "kill".
Compile client. Run it and look messages. Then edit preferences, especially the address and port number of database server. Default port number is 7077. Then save and start client again - most preferences are not reloaded until you restart. (Like ms windows). On success you should get message "Connected to database videoservertest".
Compile push server, set-up environment variables PUSH1CP to 7078 and PUSH1WP to 7081 ( those are my default numbers ). Run it.
Compile acquisition server. I plan to add a script to create the test database without acquisition server, but now it is mandatory. Acquisition server require two parameters from command line: "-S database_server_addr -P database_server_portnum". Default port is 7077, it should be the same port that client try to access - they connect the same port.
Compile client. By default client pixmaps should be located at /usr/local/vclient/images/, that may be changed by Edit->Preferences.
Build
Configure scripts, configure.in, Makefile.am files for autoconf/automake tool are provided. This should help to auto detect the system.