В C ++, когда вы архивируете объектные файлы в файл .a, имеет ли это значение для платформы?
Например, я работаю на платформе x64 с компилятором x64, я собираю кучу файлов CPP в файлы .o. Используя AR.exe, я архивирую их в файл .a и распространяю их.
Будет ли файл .a x32, x64 или взаимозаменяемым? ИЛИ это зависит от программы, использующей файл .a?
Предполагая, что «компиляция с помощью x64-компилятора» означает, что он генерирует 64-битный код, независимо от того, является ли он самим 64-битным исполняемым файлом, ваши файлы .a будут 64-битным кодом. Они генерируются из ваших файлов .o, которые являются 64-битными двоичными файлами, сгенерированными вашим компилятором. .A не может быть чем-то большим или отличным от файлов .o, составляющих его.
Других решений пока нет …