I noticed a problem in the "apps" application: when using a relative link it quits with the error message that the TCE directory is not writable.
tc@box:~$ strace -echdir,open apps
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/usr/local/lib/libfltk.so.1.1", O_RDONLY) = 3
open("/usr/lib/libstdc++.so.6", O_RDONLY) = 3
open("/lib/libm.so.6", O_RDONLY) = 3
open("/usr/lib/libgcc_s.so.1", O_RDONLY) = 3
open("/lib/libc.so.6", O_RDONLY) = 3
open("/lib/libpthread.so.0", O_RDONLY) = 3
open("/lib/libdl.so.2", O_RDONLY) = 3
open("/usr/lib/libXext.so.6", O_RDONLY) = 3
open("/usr/lib/libX11.so.6", O_RDONLY) = 3
open("/usr/lib/libXau.so.6", O_RDONLY) = 3
open("/usr/lib/libXdmcp.so.6", O_RDONLY) = 3
open("/home/tc/.fltk/fltk.org/filechooser.prefs", O_RDONLY) = 3
open("/opt/tcemirror", O_RDONLY|O_LARGEFILE) = 3
open("/opt/.appbrowser", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/proc/cmdline", O_RDONLY|O_LARGEFILE) = 3
chdir("../../home/tce/optional") = 0
open("../../home/tce/optional/test.test", O_WRONLY|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = -1 ENOENT (No such file or directory)
open("/home/tc/.Xauthority", O_RDONLY) = 4
One way to fix this problem would to run a chdir("/etc/sysconfig") before following the link, and not to prepend the link for "test.test".
I noticed this problem with 4.5 and 4.6. I did not have the time to try 4.7rc1, so forgive me, if I'm reporting a bug that's already fixed.