Моя сборка провалилась с 64-битным бустом на Solaris x86. Причина в том, что команда ar не может упаковать * .o в 64-битную статическую библиотеку. Кто может помочь? Ваши комментарии приветствуются
Ниже мой тест:
% ar rc test.a date_generators.o greg_month.o greg_weekday.o
% file *
date_generators.o: ELF 64-bit LSB relocatable AMD64 Version 1
greg_month.o: ELF 64-bit LSB relocatable AMD64 Version 1
greg_weekday.o: ELF 64-bit LSB relocatable AMD64 Version 1
test.a: current ar archive, 32-bit symbol table
% ar
usage: ar -d[-SvV] archive file ...
ar -m[-abiSvV] [posname] archive file ...
ar -p[-vV][-sS] archive [file ...]
ar -q[-cuvSV] [-abi] [posname] [file ...]
ar -r[-cuvSV] [-abi] [posname] [file ...]
ar -t[-vV][-sS] archive [file ...]
ar -x[-vV][-sSCT] archive [file ...]
Ваш test.a
Файл содержит 64 библиотеки, это просто его таблица символов, которая является 32-битной, но это не мешает работать 64-битным ссылкам.
Если вы действительно хотите file
чтобы заявить, что у него есть 64-битная таблица символов, вы можете выполнить:
ar Src test.a date_generators.o greg_month.o greg_weekday.o
Других решений пока нет …