LINUX.ORG.RU

Как автоматически узнать зависимости при линковке и выбрать нужный компилятор (gcc/mpicc)?

 ,


0

1

Есть некоторая автоматическая система сборки на основе gnumake. В некоторых случаях в коде может использоваться MPI (и линковать, а возможно и собирать его нужно mpicc/mpicxx и т.д. - хотя вроде линковки хватает), а в некоторых случаях нет (и хватает gcc).

Как это понять «на лету» более Ъ? Понятно что я знаю список исходников и объектников. Парсить список исходников на предмет mpi.h можно, но несколько муторно. Можно ли как то глянуть зависимости объектников?

ЗЫ Да, можно при сборке явно указать

make MPICC=mpicxx
но когда забываешь это сделать два экрана ошибок от линкера, а юзеры от такого в панику впадают.

★★★★★

Как это понять «на лету» более Ъ?

Для этого нужно детально знать что это за

Есть некоторая автоматическая система сборки на основе gnumake.

UVV ★★★★★
()
Ответ на: комментарий от UVV

Makefile с кучей шаблонов, пользователь задает только список cpp файлов.

AntonI ★★★★★
() автор топика

чего-то не очень понятно,

в чем проблема то? почему всегда не использовать mpicc, который на автомате?

вот шо пишут: Note that Open MPI's wrapper compilers do not do any actual compiling or linking; all they do is manipulate the command line and add in all the relevant compiler / linker flags and then invoke the underlying compiler / linker (hence, the name «wrapper» compiler). More specifically, if you run into a compiler or linker error, check your source code and/or back-end compiler — it is usually not the fault of the Open MPI wrapper compiler.

sshestov ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.