ar не может создать архив: & quot; Формат файла не распознан & quot;

У меня есть этот makefile

libjackpot.a: jackport.o jackpot.o
ar -rcs jackport.o jackpot.o

jackpot.o: jackpot.cpp jackpot.h
g++ jackpot.cpp -std=c++11 -O2 -c

jackport.o: jackport.cpp jackpot.h jackport.h
g++ jackport.cpp -std=c++11 -O2 -c

Каким-то образом (на моей коробке с Linux) я получаю

ar: jackport.o: File format not recognized

дает помощь

ar: supported targets: elf64-x86-64 elf32-i386 elf32-x86-64 a.out-i386-linux pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big elf32-little elf32-big plugin srec symbolsrec verilog tekhex binary ihex

файл jackport.o

jackport.o: ELF 64-bit LSB relocatable, x86-64, version 1 (SYSV), not stripped

3

Решение

Вам нужно указать имя библиотеки для ar, например:

   ar -rcs libjackpot.a jackport.o jackpot.o
4

Другие решения

Других решений пока нет …