Во втором случае у вас новый install path длинее, чем старый — ничего не выйдет. Там тупо под более длинный путь места нет. Нужно перекомпилировать библиотеку и перелинковать то, что с нею линкуется. Или, проще, сделать путь короче — положить библиотеку рядом с executable, а не в Frameworks (это ведь не фреймворк все равно); тогда install path будет
@executable_path/libqsqlmysql.dylib
:)
(Есть, кстати
специальная опция у линковщика -headerpad_max_install_names
, специально для перебивания, как я понимаю, но вряд ли она была включена.)