If one upgrades or downgrades qt-devel, the value of QTDIR is not set to the new location. Even if the qt.csh script is sourced, there is a test that exits the script if QTDIR is already defined, so that the old (and no longer correct) value remains. It is only by re-booting that the value is correctly set. You'll have to find a better way of dealing with this if you insist on putting the qt stuff in a non-standard place. How about an /etc/qt.conf?
Thanks, fixed.