хотя наверное я флаги не все указал что надо софт отлично работал под msvc, скомпилил на linux через g++ - появились приколы, причем такие что я вообще в ахуе
по gdb стал дебажить в командной строке, и нашел была функция int, но не было в ней return, msvc собрал и возвращал 0 автоматом, а g++ просто в машинний код не добавил ret и инструкция переходила на следующую функцию, которую я написал в коде