Как в действительности называется файл? -l для компоновщика не предназначен для получения реального имени файла. Предполагается взять [x], тогда как файл, который нужно найти, называется lib [x]. {So, a}.
Если вы хотите дать реальное имя объектного файла, вы можете просто добавить его без использования -l и использования абсолютного пути или использовать -l: [имя файла].
Я предполагаю, что правильный способ сделать это для вас - -lmkl_ia32
. Необработанные имена файлов полезны, только если lib не называется lib [x]. {So, a}