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

 
 
> Несколько вопросов по GNU toolchains
Pavel_I
сообщение Oct 21 2008, 20:03
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325



Хочу для себя прояснить некоторые моменты:

- непонятно для чего имеется две копии бинарников с разными названиями (например mipsel-linux-gcc и просто gcc) и заголовочных файлов в разных дирректориях

- откуда gcc "знает" путь к стандартным заголовочным файлам?

- откуда ld "знает" путь к стандартной библиотеке?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 7)
cosmobot
сообщение Oct 21 2008, 20:52
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 220
Регистрация: 24-04-05
Пользователь №: 4 455



это два разных gcc один собран для таргета совместимого с x86 (ну или выше)
второй для arm
(а может и тупо симлинк , в некоторых тулчайнах и такое можно увидеть )

предполагаю что со времени своей компиляции


--------------------
If a man does only what is required of him, he is a slave. If a man does more than is required of him, he is a free man.--Chinese Proverb
Go to the top of the page
 
+Quote Post
MrYuran
сообщение Oct 22 2008, 05:14
Сообщение #3


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Pavel_I @ Oct 22 2008, 00:03) *
- откуда gcc "знает" путь к стандартным заголовочным файлам?
- откуда ld "знает" путь к стандартной библиотеке?

из опций командной строки или makefile


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post
ukpyr
сообщение Oct 22 2008, 05:31
Сообщение #4


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

Группа: Участник
Сообщений: 1 264
Регистрация: 17-06-08
Из: бандустан
Пользователь №: 38 347



Цитата
- откуда gcc "знает" путь к стандартным заголовочным файлам?
- откуда ld "знает" путь к стандартной библиотеке?

думаю что эти пути прописаны в бинарниках относительно папки бинарников
Go to the top of the page
 
+Quote Post
Pavel_I
сообщение Oct 22 2008, 06:48
Сообщение #5


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325



Цитата(cosmobot @ Oct 22 2008, 00:52) *
это два разных gcc один собран для таргета совместимого с x86 (ну или выше)
второй для arm

Это именно бинарники для таргета (не линки). Они имеют один размер но разные названия.


Цитата(MrYuran @ Oct 22 2008, 09:14) *
из опций командной строки или makefile

Файл можно скомпилировать и с линковать и без makefile или указания путей в коммандной строке.
И все будет в порядке. Я проверял.


Цитата(ukpyr @ Oct 22 2008, 09:31) *
думаю что эти пути прописаны в бинарниках относительно папки бинарников

Вот я тоже к этому склюняюсь.
Go to the top of the page
 
+Quote Post
Harbour
сообщение Oct 22 2008, 07:23
Сообщение #6


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



gcc это frontend, по умолчанию он вызывает компилятор для того target, что был собран, по желанию все это задается опциями "-V version -b machine". пути к стандартным либам/includes задаются на этапе сборки gcc и потом могут отдельно конфигурится при вызове. ld ничего не знает - его или вызывает сам gcc с необходимыми опциями или его вызваешь сам, задавая опции вручную.
Go to the top of the page
 
+Quote Post
msalov
сообщение Oct 23 2008, 11:38
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 526
Регистрация: 24-08-07
Из: Беларусь, Минск
Пользователь №: 30 045



Если нужно точно знать что и откуда берёт gcc, или если надо заменить пути линкер и пр., можно воспользоваться нехитрой последовательностью действий
Код
# Получаем
gcc -dumpspecs > ./specs
# Тут правим то что надо
vi ./specs
# Сохраняем
mv ./specs `dirname $(gcc -print-libgcc-file-name)`/specs
Go to the top of the page
 
+Quote Post
Pavel_I
сообщение Oct 26 2008, 19:50
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 179
Регистрация: 27-06-05
Из: Москва
Пользователь №: 6 325



В вопросе что-откуда берется появилась некоторая ясность. Всем спасибо.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 23:52
Рейтинг@Mail.ru


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