Compiling the UDF DLM on your system.
Solaris
You need to get UDF compiled right in the first place. You
won't get any .so files in $UDF_HOME/lib if you are relying on sun
make. You need to use gmake, and the only way to be sure it gets used
when you do run the UDF installation script MinInstall is to replace
make with gmake, or otherwise put gmake in your path as make. Assuming
~/bin is in your path before /usr/local/bin, :
> cd ~/bin
> ln -s /usr/local/bin/gmake
make
Next, the libraries are not .so files so you need to be sure your
LD_LIBRARY_PATH is set to include $UDF_HOME/lib, or move copies of
those libraries (e.g. libpidf.so) into your LD_LIBRARY_PATH.
Mac
If you are getting ready to upgrade to XCode 2.0, HOLD IT. There
is a pretty awful error you get when using the udf.so compiled on such
a system
(10.4+Xcode 2). "_OpenDBF expected in flat namespace". What is that? It
doesn't make any difference how you compile it, if you do sudo
gcc_select 3.3 or whatever.
You will need to find the udf.so and udf.dlm you made back in your
10.3.9 days with the old version of XCode and put that in your
IDL_DLM_PATH. If you lost it, confidently overwrote it, whatever, you
can grab my copy here.
Not sure when a fix will come out for this and if you will have to
adjust your LD_LIBRARY_PATH or you DYLD_LIBRARY_PATH when it finally
works.
Linux
Once again you have to adjust your LD_LIBRARY PATH. On our system, and
alternate route was to put all the $UDF_HOME/lib/*.so files in your
working directory and it found them just fine. This behavior may differ
from that of your system.
Last edited by TJI on 8//17/05.
Back