Distribuiamo in Linux una libreria statica nelle versioni a 64 bit e 32 bit. Durante la risoluzione dei problemi di un cliente, vorrei che il mio script della shell diagnostica eliminasse rapidamente il problema controllando il file di archivio .a per determinare se è a 32 o 64 bit. I metodi che mi vengono in mente sono meno che eleganti:
estrai un membro .o e chiedi il comando "file" (es. ELF a 32 bit ecc.)
inizia a includere un membro fittizio codificato per indicare, ad esempio 32bit.o / 64bit.o e usa "ar -t" per controllare
Ho provato "strings xyz.a | grep 32" ma non funziona bene con le versioni. Non è un problema che spezza il cuore, ma se conosci una soluzione elegante, mi piacerebbe saperlo.