I used to tell my Kerberos library to use the default location to
store my TGT (which was /tmp/krb5cc_0). But now that I tell the
Kerberos library to store it in another location, the bind doesn't
work.
This isn't an OpenLDAP problem - you need to get Kerberos working
properly, and understand some details of how it works, before you try
and use it with OpenLDAP. There are sample applications which come
with the Cyrus SASL distribution which can be a good place to start.
In particular, you need to understand the way in which Kerberos
ccaches are located. If the enironment variable KRB5CCNAME is unset,
then the file /tmp/krb5cc_<UID> will be used, otherwise the contents
of KRB5CCNAME will be used.
You should look for further help on a list dedicated to the Kerberos
library you are using.