Существует стандартная схема именования GNU для компиляторов и других частей инструментальной цепочки:
-
--
И имя инструмента - gcc
для компилятора или другое имя инструмента, например ld
или strip
или ar
и т. Д. .
Компилятор по умолчанию, тот, который компилирует собственные двоичные файлы (не кросс-компилятор), просто называется gcc
без триплета.
Тройка компилятора, которая находится внутри файла, о котором вы упомянули в своем вопросе, - это arm-none-linux-gnueabi
(я знаю, что она выглядит как четверка, но это так). Чтобы использовать его, просто вызовите arm-none-linux-gnueabi-gcc
вместо простого gcc
.
Если вы создаете что-то, что использует Makefile
, вы часто можете получить этот Makefile
для использования нужного компилятора, запустив CC = arm-none-linux- gnueabi-gcc make
вместо обычного make
. Если вы создаете что-то, что использует сценарий GNU configure
, вы также можете указать целевой триплет для этого .
Антон написал хороший скрипт для преобразования zip-файлов в tar-файлы. С парой модификаций вы можете использовать для преобразования zip в tar и отправки файла tar в конвейере на tar
, а если у вас GNU tar
, вы можете использовать флаг --transform
для переименования вещей.
Модификации :используют w|
в качестве режима, чтобы мы могли писать в стандартный вывод, и использовать sys.stdout
в качестве файлового объекта для открытия tar-файла:
#! /usr/bin/env python
"""zip2tar """
import sys
import os
from zipfile import ZipFile
import tarfile
import time
def main(ifn):
with ZipFile(ifn) as zipf:
with tarfile.open(fileobj=sys.stdin, mode='w|') as tarf:
for zip_info in zipf.infolist():
#print zip_info.filename, zip_info.file_size
tar_info = tarfile.TarInfo(name=zip_info.filename)
tar_info.size = zip_info.file_size
tar_info.mtime = time.mktime(list(zip_info.date_time) +
[-1, -1, -1])
# zip files don't have permissions, so
# make everything executable for now
tar_info.mode=0755
tarf.addfile(
tarinfo=tar_info,
fileobj=zipf.open(zip_info.filename)
)
main(sys.argv[1])
Сохраните это как, скажем, zip2tar.py
, сделайте его исполняемым, и вы можете сделать:
zip2tar.py archive.zip | tar x -C ~ --transform 's/^myDir/myRenameDir/'
Или если ~/myRenameDir
уже существует:
zip2tar.py archive.zip | tar x -C ~/myRenameDir --strip-components=1