Dgcc-debug (Distributed GCC interface) is a program being constructed as my third year project at Lancaster University. The focus of this project is to determine if coarse grained parralel computing can be used to reduce the compile time of projects. The assumption made by this project is that all computers being used have all packages installed on them which are necessary for successful compiling of the target program. PREQS: Dgcc-Debug Installation -------------------------- Compiling project -------------------------- Requires: - Java like threads for C++ (JTC) >= 1.0.14 [www.ooc.com] - ORBacus >= 4.0.4 [www.ooc.com] - gcc >= 2.96 [www.gnu.org] - autoconf >=2.94d [www.gnu.org] - automake >=1.4e [www.gnu.org] - rpm >= 4.0 [www.rpm.org] -------------------- Installation: (RPM - preferred)------------------ Installation is best done from the RPM or your package manager of choice. I work with RedHat so I make SRPMS for my source and RPMS to install. Just install the dgcc-debug RPM via rpm. The program files will be located in /opt/bin. I chose this location due to the fact that this system is experimental. At present JTC and ORBacus do not come in RPM format. The maintainers have felt that they do not want to support any distribution over another. So use the --nodeps tags when installing dgcc-debug. -------------------------- Using dgcc-debug -------------------------- 1) Start NameService: You will need to change the location of the name service. Due to the use of the orb configuration files we can place it anywhere. For example, setting the master_orb.conf to the line below will cause the name service to be located at localhost (127.0.0.1) at port 5000: # Initial services ooc.orb.service.NameService=corbaloc::localhost:5000/NameService Also ensure that the naming_orb.conf is updated as well. The location of the NameService must match in naming_orb.conf and master_orb.conf. The name service can be located anywhere on the network. The domain name must be resolvable from DNS to work. If you have access to the DNS server to configure it or you know the sysadmin then you could get a domain name added. Otherwise you will probably have to use localhost or IP address directly. Start name serivce by: "start nameserv" (without quotes). 2) Start Master in the directory where the project to be compiled exists. For example if you are trying to recompile this project you would start master in the dgcc-debug/ directory. Master will read from the Makefile in this directory for a listing of work to be done. For example, if your code exists in /coda/project then change to that directory before running "start master" (without quotes). The script "start" will initialize the master from master_orb.conf located in the /opt/etc directory. 3) Start Slave. Slave will changed to the directories necessary before beginning to compile the project. There is no need to start the slave manually in the target directory. Start slave by "start slave" (without quotes). * Note: At present (version 0.2.2), the master loads up the first slave with all the jobs (this is not right and will be changed in a future release). -------------------------- Misc -------------------------- Please email all questions, comments or bugs to: s.torri@lancaster.ac.uk. This project will not be officially released until I finish my project and my report. So the work must be of my own effort and not someone elses. Help, mentoring or tutoring is appreciated.