Что такое toolchain и кросс-компилятор?
У меня была путаница в этой терминологии в течение длительного времени. Я попытался ответить на этот вопрос и получил некоторые противоречивые ответы.
Один сайт говорит, что кросс-компилятор аналогичен цепочке инструментов, некоторые сайты говорят, что кросс-компилятор является частью инструментальной цепочки. Я явно не нашел это полезным.
Чтобы быть конкретным, я использовал кросс-компилятор PowerPCeabi и инструментальную цепочку Atmel AVR. Являются ли эти оба инструментария и/или кросс-компиляторами или они отличаются?
Я думаю, мой очень конкретный вопрос был бы, если бы мне пришлось поместить это в мое резюме, будет ли правильно говорить Experienced in powerpceabi and AVR toolchains
?
Изменить: для людей, которые отметили этот вопрос как unclear what you're asking
, насколько яснее я должен это сделать?
Измененный вопрос: могу ли я упомянуть powerpceabi
и AVR
как toolchains
?
Ответы
Ответ 1
Если мы определяем слово "хозяин" как означающий компьютер, на котором вы компилируете, и "цель", как компьютер, на котором вы хотите запустить код, тогда собственный компилятор - это тот, где цель и хост тот же (вид). Кросс-компилятор - это компилятор, в котором цель отличается от хоста.
Инструментальная цепочка - это набор компиляторов + компоновщик + библиотекарь + любые другие инструменты, необходимые для создания исполняемого файла (+ разделяемые библиотеки и т.д.) для цели. Отладчик и/или IDE также могут считаться частью инструментальной цепочки.
So
Опыт работы с инструментами Powerpceabi и AVR
было бы, как бы я выразился, если бы у меня был некоторый опыт с ними.