1) Почему при сборке из mex он собрал много библиотек, а при сборке из каталога он собрал всего 2ве (блас и лапак)?
Это стандартные библиотеки gcc, они всегда собираются, но не обязательно используются. При сборке из каталога получилось 2 библиотеки, но они тоже скорее всего зависят как минимум от libgcc_s_seh-1.dll и libgfortran-5.dll, может ещё от каких-нибудь. Это можно посмотреть с помощью
Dependency Walker.
2) Зачем при сборке из каталога мы запускали "-DTEST_FORTRAN_COMPILER=OFF .."? Что он означает? Нагуглить не смог, но догадываюсь... DisableTEST... А зачем мы его отключили...
В cmake скрипте сборки lapack есть проверка того, что компилятор фортрана соответствует требованиям. Она выполняется компиляцией и запуском тестового приложения. Т.к. компиляция происходив в linux, то полученный exe-шник просто не может запустится
. параметр -D означает установку переменной, которая используется в CMakeLists.txt (в данном случае TEST_FORTRAN_COMPILER).
3) А статические библиотеки *.lib он не собирает? Пытался читать описание MXE, но пока только каша в голове.
Eсли выставить MXE_TARGETS x86_64-w64-mingw32.static, то в usr/x86_64-w64-mingw32.static/lib будет liblapack.a. По идее его можно можно использовать напрямую (например как
тут).
4) Линукс как то можно очистить от временных файлов? За все время экспериментирования он сожрал порядка 20гб, свободное место под системой почти закончилось...
Странно, что там могло на 20ГБ получится, у меня в mxe после всего около 3ГБ занимает. А так может помочь команда du или с помощью того же mc
можно найти что заняло столько места. Что касается самого линукса, то ненужные файлы (т.е. те, которые можно безопасно удалить) могут быть в .cache каталоге пользователя и в /var/cache системные (тут особенно много занимает кеш apt).