3ds models missing when compiling x86-64/kde from source
Posted: 18.04.2006, 21:01
My SuSE 10.0 version of celestia 1.3.2-9, an x86-64 version probably compiled --with-kde, contained no images of spacecraft (although the orbits and names were placed correctly). My old version of celestia had these in so I presumed there was a bug somewhere.
For fun (!) I decided to compile from source. This also allowed optimisation for my AMD CPU. I downloaded version 1.4.1, compiled for kde and ran - only to find the same problem - no spacecraft. (For info the flags I used were --with-kde --with-qt-dir=/usr/lib64/qt3 --with-qt-libraries=/usr/lib64/qt3/lib64 --enable-libsuffix=64 F77=gfortran)
Compared the model directory in the downloaded and installed directory trees and noticed that none of the *.3ds files had been copied across. Copied these across, ran celestia and - Hubble and the rest were there.
I had a look at the makefile in the model directory. This defines pkgdata_DATA to include *.cms, *.cmod and *.pts. It then defines EXTRA_DIST to contain the above plus *.3ds. 'make install', which in the logic of these things becomes 'make install-am', then 'make install-data.am', then 'make install-pkgdataDATA' only installs the pkgdata_DATA files so misses the *.3ds files (including the spacecraft).
So it looks as though a reduced distribution is being produced. I could not find a configure option to change this or any reference to EXTRA_DIST in the configure file. The bug/error/feature has probably been around for some time (i.e. it affected the SuSE 10.0 compilation) but as it has not been reported before I presume it only arises for special cases ie x86-64 or --with-kde.
If someone could track this bug down it would make it easier for the next person. In the mean time - thanks for all you hard work I really apppreciate it.
Regards,
David Webb.
p.s. If you know the system you will see above evidence for other bugs. Although configure tests (at least three times) to see if it needs to use lib64 instead of lib, when it gets to the Qt and kde sections if forgets about LINUX_64_MODE and libsuff. Instead I have to put in lib64 by hand.
For fun (!) I decided to compile from source. This also allowed optimisation for my AMD CPU. I downloaded version 1.4.1, compiled for kde and ran - only to find the same problem - no spacecraft. (For info the flags I used were --with-kde --with-qt-dir=/usr/lib64/qt3 --with-qt-libraries=/usr/lib64/qt3/lib64 --enable-libsuffix=64 F77=gfortran)
Compared the model directory in the downloaded and installed directory trees and noticed that none of the *.3ds files had been copied across. Copied these across, ran celestia and - Hubble and the rest were there.
I had a look at the makefile in the model directory. This defines pkgdata_DATA to include *.cms, *.cmod and *.pts. It then defines EXTRA_DIST to contain the above plus *.3ds. 'make install', which in the logic of these things becomes 'make install-am', then 'make install-data.am', then 'make install-pkgdataDATA' only installs the pkgdata_DATA files so misses the *.3ds files (including the spacecraft).
So it looks as though a reduced distribution is being produced. I could not find a configure option to change this or any reference to EXTRA_DIST in the configure file. The bug/error/feature has probably been around for some time (i.e. it affected the SuSE 10.0 compilation) but as it has not been reported before I presume it only arises for special cases ie x86-64 or --with-kde.
If someone could track this bug down it would make it easier for the next person. In the mean time - thanks for all you hard work I really apppreciate it.
Regards,
David Webb.
p.s. If you know the system you will see above evidence for other bugs. Although configure tests (at least three times) to see if it needs to use lib64 instead of lib, when it gets to the Qt and kde sections if forgets about LINUX_64_MODE and libsuff. Instead I have to put in lib64 by hand.