реклама на сайте
подробности

 
 
> arm gcc, кто сам пробовал собирать?
federal
сообщение Oct 30 2013, 18:24
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 74
Регистрация: 12-01-13
Из: Нижний Новгород
Пользователь №: 75 160



Кто нибудь сам собирал gcc?

Всегда используют кросс компилятор. Да, для разработки этого достаточно.
Но, наверное, у многих рано или поздно возникало желание заиметь на отладке родной gcc.

Теперь вопрос, как его собрать?

Гуглил достаточно много, конкретных статей не нашел как это сделать. Много статей именно про кросс тулчейн.

Нашел, что при сборке тулчейна --target должен быть равен --host. А --build = той системе, где происходит сборка.

Хотел узнать у сообщества, как мне собрать такой gcc для арма? чтобы компилятор и запускался на арме и генерировал код для себя же, т.е. для арма.

Можно ли собрать такой компилятор при помощи CodeSourcery?

--
С уважением
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
federal
сообщение Oct 31 2013, 10:27
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 74
Регистрация: 12-01-13
Из: Нижний Новгород
Пользователь №: 75 160



xor.kruger, спасибо за совет. Книгу читал.
Как кросс gcc собрать - тут все прозрачно и понятно.

вопрос именно в том, что для нативного gcc собирать glibc надо?
вообще, по логике, не нужно, ибо придется кроме gcc пересобирать всю систему.

мне так же не понятно, есть CodeSourcery, при кросскомпиляции он линкуется с либами(glibc и т.д.), которые идут вместе с CodeSourcery.
на целевой платформе glibc может быть другой(у меня другая).
обычные user-space приложения, собранные при помощи CodeSourcery на целевой плате запускаются и никаких ошибок.

кросскомпилирую binutils, когда --target равен --host, компилирую успешно.


Сообщение отредактировал federal - Oct 31 2013, 11:27
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Oct 31 2013, 15:26
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Цитата(federal @ Oct 31 2013, 14:27) *
xor.kruger, спасибо за совет. Книгу читал.
Как кросс gcc собрать - тут все прозрачно и понятно.

вопрос именно в том, что для нативного gcc собирать glibc надо?


libc.so в обоих случаях используется тот же самый, потому как он динамически линкуемый.
Для статической линковки libc.a надо указать ключ при компиляции апликации.

Цитата(federal @ Oct 31 2013, 12:59) *
у кросс компилятора свой glibc
на целевой плате - свой


По умолчанию один и тот же. Он должен стоять на обеих платформах, но на рабочей машине чисто для линковки. Исполняться будет всегда тот, что стоит на таргет машине.
Go to the top of the page
 
+Quote Post
federal
сообщение Oct 31 2013, 16:13
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 74
Регистрация: 12-01-13
Из: Нижний Новгород
Пользователь №: 75 160



Цитата(Tarbal @ Oct 31 2013, 19:26) *
libc.so в обоих случаях используется тот же самый, потому как он динамически линкуемый.
Для статической линковки libc.a надо указать ключ при компиляции апликации.

так оно и есть

Цитата(Tarbal @ Oct 31 2013, 19:26) *
По умолчанию один и тот же. Он должен стоять на обеих платформах, но на рабочей машине чисто для линковки. Исполняться будет всегда тот, что стоит на таргет машине.

я тоже так считал, да и считаю...
но на деле не совсем так. объясню почему.

вы можете поставить CodeSourcery, иметь из целевой фс либы, скажем, из /usr/lib, но не иметь glibc.
и вы удачно скомпилируете приложение, явно компилятору не указывая, где ваш целевой glibc лежит. Такой фокус не проходит, скажем, с pthread. А вот с glibc проходит. И вы успешно запустите ваше приложение.

вот тут то и возник у меня этот вопрос, ибо, используя старенький glibc на целевой платформе и собирая нативный тулчейн, происходит путаница с glibc. А собирая новый glibc, придется пересобирать всю систему.
,
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- federal   arm gcc   Oct 30 2013, 18:24
- - Tarbal   Цитата(federal @ Oct 30 2013, 22:24) Кто ...   Oct 30 2013, 19:02
- - federal   Tarbal, вы меня не поняли. Я в курсе, что можно с...   Oct 30 2013, 19:04
- - Enthusiast   Цитата(federal @ Oct 30 2013, 22:24) Кто ...   Oct 31 2013, 04:58
- - federal   речь не про кросс-компилятор   Oct 31 2013, 06:07
|- - Enthusiast   Цитата(federal @ Oct 31 2013, 09:07) речь...   Oct 31 2013, 15:04
- - alx2   Цитата(federal @ Oct 30 2013, 23:24) Но, ...   Oct 31 2013, 06:22
|- - federal   Цитата(alx2 @ Oct 31 2013, 10:22) Не пони...   Oct 31 2013, 08:59
- - xor.kruger   ЦитатаНо, наверное, у многих рано или поздно возни...   Oct 31 2013, 08:55
- - xor.kruger   Цитатас Buildroot не хотелось бы связываться, хоче...   Oct 31 2013, 09:42
- - Tarbal   А какой у вас Линукс? Есть книга, где описано как...   Oct 31 2013, 18:26
- - federal   ядро 3.5.5 по lfs и собираю   Oct 31 2013, 18:31
- - federal   тему можно закрыть, все собрал наконец-таки   Nov 5 2013, 06:26
|- - Tarbal   Цитата(federal @ Nov 5 2013, 10:26) тему ...   May 7 2016, 15:20
|- - Paramon   Цитата(Tarbal @ May 7 2016, 18:20) Так вы...   Nov 10 2016, 11:44
- - temiru   совсем недавно перешел с ардуино на АРмовский корт...   May 4 2016, 07:41


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th August 2025 - 14:34
Рейтинг@Mail.ru


Страница сгенерированна за 0.01399 секунд с 7
ELECTRONIX ©2004-2016