Difference between revisions of "Original GUI Installation Details"

From Genesis2
Jump to: navigation, search
(Interactive Genesis2 GUI)
(Adding your design to the GUI)
Line 53: Line 53:
  
 
4. Make sure the gui has read/write permissions for the design directory
 
4. Make sure the gui has read/write permissions for the design directory
and change subdirectory (may need to be root for this to work).  In the example below, group "33" is a group that is writable by the web server, so that the gui can read and update files.
+
and change subdirectory (may need to be root for this to work).  In the example below, group "33" is a group that is writable by the web server, so that the gui can read and update files. You may need to login as root/admin to run the chgrp command.
  
 
     % chgrp 33 $MYPATH/mydesign $MYPATH/mydesign/SysCfgs
 
     % chgrp 33 $MYPATH/mydesign $MYPATH/mydesign/SysCfgs
 
     % chmod g+w $MYPATH/mydesign
 
     % chmod g+w $MYPATH/mydesign
     % chgrp g+w $MYPATH/mydesign/SysCfgs
+
     % chmod g+w $MYPATH/mydesign/SysCfgs
  
 
5. make sure "mydesign" contains at least one seed hierarchy file e.g. "baseline.xml"
 
5. make sure "mydesign" contains at least one seed hierarchy file e.g. "baseline.xml"
  
 
6. That's it!  The new design should now magically appear in the gui.
 
6. That's it!  The new design should now magically appear in the gui.

Revision as of 18:04, 30 March 2011

Interactive Genesis2 GUI

(NOTE: should probably include a link to the actual gui: http://www-vlsi.stanford.edu/ig)

Installing the GUI

Unpack the tarball such that <path> is the name of the top-level directory containing "index.htm". For instance, on our machine <path> is "/home/steveri/ig" and the full pathname for index.htm is "/home/steveri/ig/index.htm".

Use symbolic links to connect the top-level directory to your web server e.g. in our installation we did

 % ln -s /home/steveri/ig /var/www/homepage/ig 

such that the URL "http://www-vlsi.stanford.edu/ig" takes you to "index.htm" and starts the gui.

Similarly, connect the <path>/cgi subdirectory to your web server's cgi-bin directory; for instance, in our installation this is accomplished by

 % ln -s /home/steveri/ig/cgi /usr/lib/cgi-bin/ig

The GUI calls an "update" perl script using the URL "/cgi-bin/ig/updatedesign.pl" (see "Button_SubmitChanges.js). You can test this by visiting the URL; e.g. if you visit "http://www-vlsi.stanford.edu/cgi-bin/ig/updatedesign.pl" you'll see a valid error message output: "ERROR: new design name is null." This indicates that the perl script is in the right place (for Stanford's installation!)

At this point you may have to mess around with permissions a bit to get everything working...good luck with that.

Adding your design to the GUI

To add a new Genesis2 design to the gui:

1. Link the new design ("mydesign in the exmaple below) to the gui's design directory:

    % ln -s $MYPATH/mydesign ~steveri/ig/designs/mydesign

2. Make sure the new design has a SysCfgs subdirectory where the gui can write temporary change files:

    % mkdir mydesign/SysCfgs

3. Make sure the makefile in "mydesign" supports the following syntax (needed when gui calls "updatedesign.csh")

    % cd $MYPATH/mydesign
    % make gen GENESIS_HIERARCHY=new.xml GENESIS_CFG_XML=SysCfgs/changefile.xml

4. Make sure the gui has read/write permissions for the design directory and change subdirectory (may need to be root for this to work). In the example below, group "33" is a group that is writable by the web server, so that the gui can read and update files. You may need to login as root/admin to run the chgrp command.

    % chgrp 33 $MYPATH/mydesign $MYPATH/mydesign/SysCfgs
    % chmod g+w $MYPATH/mydesign
    % chmod g+w $MYPATH/mydesign/SysCfgs

5. make sure "mydesign" contains at least one seed hierarchy file e.g. "baseline.xml"

6. That's it! The new design should now magically appear in the gui.