XEphem 3.7.3 Frequently Asked Questions and Answers

Last updated May 5, 2008

The questions are organized into the follow categories:

UNIX getting XEphem up and running well on your UNIX (or Linux, etc) system.
Mac ditto for MacOS X
Usage tips, techniques and issues applicable to all platforms.
Bugs Known bugs in the current release.

Can't find your question here? Try the Forum (off site) or send an email to xephem@ClearSkyInstitute.com


UNIX Installation Questions

  1. I built from the downloaded source code and I am having problems with XEphem GUI operation, such as windows not closing properly using the title bar control. Any suggestions?

    If you are using lesstif, switch to Open Motif then rebuild. You will need both the runtime and developer kits. You can also get just the minimum you need from our User Contrib page. Or just forget the hassle and do it the easy way by purchasing the CD version.

  2. When I try to use Help I get the message "Error: No running window found". I have Help » Configure set to mozilla. What's going on?

    The mozilla browser must already be running. Start mozilla then try again.

  3. When I open Sky View I get the message "can not find classicfigs.csf" and XEphem dies.
    Or when I start XEphem I know there is supposed to be a logo at the top but it is missing.
    Or I can only find a few database files after I installed the commerical version.
    What's going on??

    Sounds like there is a problem with the way XEphem support files are configured. First some background. XEphem looks for support files in two places in order, first XEphem.PrivateDir then XEphem.ShareDir. These terms are X Window System resource names that refer to a per-user private directory and a system-wide shared directory, respectively. By default these are $HOME/.xephem and . (where "$HOME" refers to the directory you are in when you first log into your system and "dot" is UNIX parlance for the current directory), respectively.

    You can set a different value for XEphem.PrivateDir in the file named $HOME/.xephemrc. For example, to use the directory /home/myhome/.myxephem for your private files add a line to this file as follows:

            XEphem.PrivateDir: /home/mylogin/.myxephem
        

    You can set a different value for XEphem.ShareDir using the standard X Window System resource file mechanism. The default location for the global version of this file for XEphem on Linux and MacOS X systems is /etc/XEphem, and on other UNIX systems it is often /usr/lib/X11/app-defaults/XEphem. For example, to use the directory /usr/local/xephem for your shared files add a line as follows:

            XEphem.ShareDir: /usr/local/xephem
        
    Now, to get back to the opening questions. The missing files in question are located in the directories named auxil or catalogs under XEphem.ShareDir. So if these directories are not set up correctly, such as from a previous installation of XEphem that was installed differently or when trying to mix the free and commercial versions of XEphem, they will not be found. With this explanation, you now know how to check that your private and shared directories are set up as desired and then things should work correctly.

  4. I am running Linux and when I try to build from source I get errors about missing X11 stuff. What can I do?

    This question pops up often on the XEphem Forum In short, you need several more packages. For example, on Ubuntu 7.2, here are the commands to get them. Run these as root, or precede each line with "sudo". (Submitted by David F. Reed).

        apt-get install libx11-dev
        apt-get install x11-dev
        apt-get install xorg-dev
        apt-get install x11proto-print-dev
        apt-get install libxp-dev
        
    Also, though not required, the following turned out to be helpful in figuring out what was where...
        apt-get install apt-file
        

    Similar packages are provided on other linux flavors. Search for packages with "x11", "xorg" and "xp" and some form of "dev" (short for "development") in their names.

  5. I am running Linux and when I try to run the install script on the commercial edition it says "./install: No such file or directory". That makes no sense, because the file is right there. What's going on?

    The install script uses the #! mechanism to invoke an interpretor. The message refers to the interpretor, in this case /bin/csh. So the real problem is you don't have /bin/csh installed. Look around for a package with csh in it, get it installed, then try again.


MacOS X Installation Questions

  1. I am having problems installing on Leopard. Any ideas?

    Follow these steps to install the CD images on Leopard (10.5):

    StepDo thisComments
    1Install Disk 1 packageIt will almost complete then say it failed
    2Start Terminal and type exactly the following at the prompt all on one line:
    sudo sh -c "echo XEphem.ShareDir:/usr/local/xephem > /etc/XEphem"
    This creates a file telling XEphem where its supporting files are installed. This must be done as root which the command "sudo" does temporarily -- admin is not enough (this is why the install fails).
    3Install Disk 2 packageIt will say it completed successfully, which it did.
    4Install Disk 3 packageIt will say it completed successfully, which it did but along the way it wiped out Disk 2.
    5Install Disk 2 package (yes, again!)It will say it completed successfully, which it did and it also did not effect Disk 3.
    6a From Finder click on /Applications/XEphem.app; or ... Be sure to start X11.app first. If X11.app is not already running, the script will cause multiple instances of X11.app to be running and you really don't want that.
    6b From Terminal type xephem works fine whether or not X11.app is already running.
    7Stay in the first SpaceThe new Spaces feature does not work with X11 applications yet. Until Apple fixes this, all XEphem windows work best if they stay in the first Space.

    For more information about X11 and Leopard, try here.

  2. When I build from source I get errors like 'make: Command not found' or about missing X11 files. Am I missing something?

    Yes. To build XEphem from the source tarball, you must first install the following packages (all from Apple):

    Then read the INSTALL file inside the XEphem tarball for the proper way to invoke the make command when building on OSX.

    Note that if you are installing the commercial version of XEphem you don't need any of these other than the X11.app. If you have any questions about installing X11.app you might find this article from Apple useful.

  3. Trying to install XEphem CDs under Tiger it says I already have a newer version installed. I know this is not so. What's going on?

    I have no idea what Tiger did to break package installations but the workaround is to install from the command line as follows:

    1. start a Terminal session (use Finder and look for Applications / Utilities / Terminal)
    2. insert the disk and wait a few seconds for it to spin up
    3. from Terminal type
      	    sudo /Volumes/XEphem*/install
      	
    4. type your Administrator (also known as the "root") password
    5. answer the few questions from the install script using the default values
    6. when complete, eject the CD and you are finished.

  4. Can I use firefox as the help system browser?

    Yes. To use the Firefox browser for the XEphem help system on Mac OSX, use the following entry in Help » Configure help (contributed by David Radunsky)

    osascript -e 'tell application "Firefox-bin"' -e 'get URL "%s"' -e 'end tell'

  5. During the installation on Tiger using the Mac Installer it says "There were errors installing the software-please try installing again." I tried several times but it always says the same thing. Any ideas?

    Try uninstalling and reinstalling X11.app. If you install it from your Mac CDs, then also install any newer updates from Apple.com. When X11.app is fresh and up to date, try installing XEphem again.


Usage Questions (applicable to all platforms)

  1. What's wrong with Help?

    It's probably not configured correctly. XEphem uses your Internet browser to display help, so it has to know how to talk to it.

    Off the Main window, open Help » Configure help. Look through the choices for your browser. If you find it, just click the button on the left and test with any XEphem Help entry. Note that some of these commands assume the browser is already open and do not work otherwise, so if the line for your browser is listed and activated but Help still does not work, try opening your browser first and trying again.

    If Help still does not work, you'll have to figure out the command to issue to your browser to open a local file. The table entry is passed to a shell so you can do whatever you need to, but don't forget to quote sensitive characters. Enter your new command in any line of the table, using %s where the local file name should go, then click to activate the line and test again.

    After you have it working, be sure to save the new configuration using Preferences » Save or you'll have to do it again each time you start XEphem.

    We researched several browsers but there are certainly more we didn't try, and there might well be better ways to talk to them than we found. Please send your suggested commands to us at xephem@clearskyinstitute.com and we will post here for others to find.

  2. Why does the Sky View Grid toolbar button act so weird?

    Perhaps the logic is only obvious to me! The Sky View uses two coordinate systems: RA/Dec and Alt/Az. The coordinate system for Display orientation is independent of that for the Grid. The rules for the control buttons are as follows:
    toggles Display coordinate system between RA/Dec and Alt/Az, but never changes the coordinate system for the Grid.
    turns the Grid off and on, and when it turns it on always sets the Grid coordinate system to match that currently used for Display.
    In this way 6 combinations of coordinate systems (2 for Display [RA/Dec + Alt/Az] X 3 for Grid [RA/Dec + Alt/Az + off]) can be controlled with just 2 buttons (although one can not switch among them in an arbitrary order).

  3. Why do Sky View grid lines have a small bump to them sometimes?

    Because of atmospheric refraction. Refraction raises everything to a greater extent as you look lower and lower, increasing rapidly near the end to about 32' at horizontal. This effect is evident when displaying in one (ideal) coordinate system and overlaying (refracted) grid lines in the opposite coordinate system.

    Suppose you are pointing near the horizon, are using Alt-Az display mode and are displaying RA-Dec grid lines. When projected onto the celestial sphere as seen from your location under all that air, this has the effect of curving the grid lines a little higher in the vicinity of the horizon than one would see without refraction. Indeed, because of refraction you actually see about 32' more than 90° down from the zenith -- bonus!

    Demonstrate this to yourself by going to the Main window and setting an Air Pressure value of 0 to effectively eliminate refraction. You will see the grid lines straighten out, and objects that were visible slightly above the horizon will drop below and go out of site.

    What happens below the horizon? This is a bit problematic. In accord with standard models, XEphem gradually reduces refraction so that at about 5° below the airless horizon the effect is gone and the grids return to their airless paths.

  4. What is the meaning of the red circles drawn on my sky chart at a certain point on the ecliptic?

    The anti-solar point is marked with a small open circle. The edges of the umbral and penumbral Earth shadow are marked with larger open circles. If Preferences » Equatorial is set to Topocentric, the projection is at the current distance of the Moon and corrected for parallax; if set to Geocentric the projection is at infinity.

    If the moon is within the small circle you have a total lunar-eclipse; try 2003-11-09 @ 01:00:00 UTC.

  5. May I use screen shots, Postscript files, listings or other stuff made using XEphem on my web site or publications?

    Regarding web sites, yes you may provided the following bit of HTML is placed somewhere on each such page:

        <a target="csiwin" href="http://www.ClearSkyInstitute.com/xephem/xephem.html">Created using <b>XEphem</b></a>
        

    It should look and work like this: Created using XEphem.

    Regarding publications, the Postscript files generated by XEphem already contain sufficient boilerplate with regards to giving us due credit. If these files are used in tact as generated by XEphem, no further credits are required.

    What you may not do is site isolated numbers that you pulled off XEphem in your publications. There are too many contextual circumstances surrounding astrometric quantities to make fair representation of all that XEphem considered in its computation of displayed values.

  6. Why do you use Motif? Will you ever change to something else?

    I suspect XEphem will forever be written in Motif for the following reasons:

    1. First and foremost, I very deliberately make the decision to focus my time and energy on features and accuracy, not aesthetics because, frankly, it's the aspect of the project I enjoy the most. I still have a long list of features to add in the coming years; this effort, and my enjoyment, would be drastically diluted by a major effort to change the L&F.

    2. The effort to change widget sets would be large. Not only is it "just" a matter of changing widgets in roughly 100k lines of GUI code, but I make deep use of Motif-specific functionality (after all, I was involved in creating Motif in the 80s) that do not map well to other toolkits.

    3. I know the entire API of Motif (about 3000 functions) completely by heart and am very efficient using it. When adding a new window, I see right through the widgets straight into the science. I am *almost* this proficient with Qt and Java Swing but see #2 and #4.

    4. I must have no inherent artistic or aesthetic sense of my own because, really, Motif still looks fine to me. To my mind, all buttons look alike and drag-and-drop is silly. I have no personal appreciation whatsoever of why one would pick one toolkit over another. I lived through the great SunView/OpenLook/Motif GUI wars of the late 80s wondering all along what the fuss was about.

    5. I feel no compulsion to compete or otherwise compare XEphem with any other software. It is my own labor of love which I am happy to share, it is not my intention to make it "successful" by any external measure. I do hope you find XEphem useful, even if you find it ugly.

Known bugs

  1. Reports from several users of AMD and Sparc 64 bit systems indicate problems compiling XEphem with gcc when any optimizations are turned on. This includes compiling the Motif library libXm.a as well. They report XEphem builds and runs fine if all the -O options are removed from the Makefiles.

  2. If you try to build XEphem and during linking see undefined references similar to the following:
    	/usr/lib64/libXm.a(XmRenderT.o): In function `_XmXftDrawCreate':
    	(.text+0x94d): undefined reference to `XftDrawCreateBitmap'
    	/usr/lib64/libXm.a(XmRenderT.o): In function `ValidateAndLoadFont':
    	(.text+0x1a6a): undefined reference to `FcPatternCreate'
        
    try adding two more libraries to the link as follows:
    	XLIBS = $(MOTIFL)/libXm.a -lXp -lXt -lXext -lXmu -lX11 -lXft -lfontconfig
        
  3. If you try to build XEphem on 64 bit systems and during linking see references to incompatible architecture, such as these from SuSE 10.2:
    	/usr/lib64/gcc/x86_64-suse-linux/4.1.2/../../../../x86_64-suse-linux/bin/ld: warning: i386 architecture of input file
    	`../../libXm/linux86/libXm.a(Xpmparse.o)' is incompatible with i386:x86-64 output
        
    try copying the libXm.a that comes with your system on top of the one included in the XEphem distro. For example assuming you are in the GUI/xephem source directory (and again assuming SuSE 10.2):
    	cp /usr/lib64/libXm.a ../../libXm/linux86/libXm.a
        
  4. If you get errors when downloading asteroid data from Lowell, try editing astorb2edb.pl. Replace lines 229-236 with one line that instead of using ftp uses curl to download the file. The result should look like this:
        # transfer
        print "Getting $ORBFTPDIR/$ORBGZFILE from $ORBSITE...\n";
        !system ("curl -s -o $ORBGZFILE ftp://$ORBSITE/$ORBFTPDIR/$ORBGZFILE") or
    	die ("curl -s -o $ORBGZFILE ftp://$ORBSITE/$ORBFTPDIR/$ORBGZFILE failed");
        
    astorb2edb.pl is in the XEphem.ShareDir/auxil directory, which by default is /usr/local/xephem/auxil. Note you can run this script directly if desired, that's really all XEphem does to download data from Lowell.