Question
I am attempting to build gpstk-1.2 from source under
MacOSX?. So far, I had to tweak a few things here and there (there seem to be a few assumptions that "not Linux" implies "Windows"). I'm currently stuck, however, with a problem I don't know how to solve.
The build process complained that it couldn't find definitions for makeEngEphemeris() and makeRinexObsData(). I did a full text search on all the files in the gpstk-1.2 directory, and sure as heck, there aren't any definitions - I find prototypes and I find calls to the functions, but no definitions.
Even more weirdly, I have a Windows utility that can search for text in .tar files, and using that, I do see what looks like the beginning of a function definition for each of the missing functions. This suggests that perhaps my tar extraction was incomplete!
But what's even stranger is that it is incomplete on two platforms: I downloaded gpstk-1.2-src.tar.gz independently under
MacOSX? and Windows XP. I extracted using gunzip and "tar xvf" under
MacOSX?, and the same way under Cygwin on the Windows box. In both cases, none of the extracted files contains the missing function definitions.
What source file(s) contain the function definitions, and where in the directory tree should they end up after extraction? If I know that, I can confirm whether or not the files are being extracted.
I wouldn't call myself a Unix guru, but I'm not a novice either (have used Unix, Linux, and now
MacOSX? on and off for about 20 years) and I've never encountered a situation like this before. Any advice would be appreciated!
--
JayBunn - 01 Feb 2007
Answer
If you answer a question - or have a question you asked answered by someone - please remember to edit the page and set the status to answered. The status is in a drop-down list below the edit box.
Answering my own question - it turns out that there are two files, "MDP2Rinex.cpp" and "mdp2rinex.cpp" in the apps/MDPTools directory. On any system that is not genuinely case-insensitive (including Windows and
MacOSX?), one of these files overwrites the other during the extraction process. Therefore, the source extraction doesn't work correctly on a Windows or
MacOSX? computer, so "platform independence" is a dubious assertion. One of the files should be renamed.
--
JayBunn - 02 Feb 2007
Thanks for the feedback. This is one thing we must have overlooked. Our primary focus is platform independence of the base library and a lesser focus on the applications. However, we still want to make that as cross platform as possible. We will rename that file and get it corrected in subversion soon.
--
RickMach - 02 Feb 2007