powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
25 сообщений из 39, страница 1 из 2
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892691
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Предположим я использую в своей программе функцию strlen, для чего добавил директивы препроцессору:
Код: plaintext
1.
2.
#include <stdio.h>
#include <string.h>



Что будет включено в мою программу:
1. Cомпилированные бинарники библиотеки libc (имеющие расширение so)
2. Исходные тексты стандартной библиотеки С (имеющие расширения cpp) и все вместе скомпилированно тем компилятором, который я исопльзую и с теми ключами, которые я ему задал.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892721
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz,
Почему не попробовать?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892726
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp
BanditKarapuz,
Почему не попробовать?


Как?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892731
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz
PetroNotC Sharp
BanditKarapuz,
Почему не попробовать?


Как?
сделать hello world и потом разобрать выходную папку. До последнего байта.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892737
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PetroNotC Sharp
BanditKarapuz
пропущено...


Как?
сделать hello world и потом разобрать выходную папку. До последнего байта.


Что значит "разобрать выходную папку. До последнего байта"?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892742
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz,
Мммм.... А какой практический интерес данного вопроса?
Или чисто академический?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892756
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz, как всегда мы вынуждены додумывать доп. условия.

Поскольку ты ссылаешся на расширение .so то можно предположить что тебя интересует конкретно
поведение linux компилляторов gcc/clang.

Я сомневаюсь что стандарт языка С как-то регламентирует это поведение (линковка).

Тоесть твой вопрос касается не языка а конкретного компиллятора. Подтверди пожалуйста мое предположение.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892781
egorych
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz, если коротко, то зависит от ключей линкеру. При статической сборке CRTL будет прилинкована к твоей программе, иначе libc должна быть доступна программе в виде библиотеки.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892831
Barlone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz
PetroNotC Sharp
BanditKarapuz,
Почему не попробовать?


Как?
Удалить исходные тексты стандартной библиотеки С, скомпилировать программу и убедиться, что она работает.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892856
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
mayton
BanditKarapuz, как всегда мы вынуждены додумывать доп. условия.

Поскольку ты ссылаешся на расширение .so то можно предположить что тебя интересует конкретно
поведение linux компилляторов gcc/clang.

Я сомневаюсь что стандарт языка С как-то регламентирует это поведение (линковка).

Тоесть твой вопрос касается не языка а конкретного компиллятора. Подтверди пожалуйста мое предположение.


Меня интересует возможность повышения производительности перекомпиляцией стандартной библиотеки С/С++ под свое железо. Это возможно проявится, если к моей программе линкуются не исходники, а готовые бинарники (тогда я могу их перекомпилировать под свою систему). Пробовать буду gcc и intel- компиляторы.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892872
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzМеня интересует возможность повышения производительности перекомпиляцией стандартной
библиотеки С/С++ под свое железо.

Судя по вопросу - это не твой уровень квалификации. Забей пока не изучишь Генту.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892888
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

Судя по вопросу - это не твой уровень квалификации. Забей пока не изучишь Генту.


Если ваш уровень квалификации позволяет нарисовать путь движения падавана, то пожалуйста, ответьте на вопрос в топике: 1 или 2?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892896
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzответьте на вопрос в топике: 1 или 2?

Ни то ни другое.

Падаван в первую очередь должен двигаться в сторону оптимизации своего кода. Даже если
профилер (которым ты, конечно же, уже воспользовался) показывает основные затраты в
времени в системных вызовах, это не повод полагать, что оптимизация их внутренностей
поможет. Гораздо больший эффект можно получить избежав этих вызовов.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892906
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

BanditKarapuzответьте на вопрос в топике: 1 или 2?

Ни то ни другое.

Падаван в первую очередь должен двигаться в сторону оптимизации своего кода. Даже если
профилер (которым ты, конечно же, уже воспользовался) показывает основные затраты в
времени в системных вызовах, это не повод полагать, что оптимизация их внутренностей
поможет. Гораздо больший эффект можно получить избежав этих вызовов.


О великий учитель, а вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892914
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzа вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной
библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)?

На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не
путаю. Изучай Генту.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892919
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Бинарники, если указана статическая линковка. SO если не указана.
В первом случае бывали примеры у меня, когда между разными машинами бинарник не переносился (даже в рамках одного семейства ОС и архитектуры)
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892921
Фотография Aklin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
BanditKarapuzа вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной
библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)?

На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не
путаю. Изучай Генту.Причем эти библиотеки могут быть разных версий.
Если вы соберете программу с динамической линковкой с рассчетом на одну версию, а на компьютере ее не окажется, ваша программа не запустится.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892924
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не
путаю. Изучай Генту.


Всегда считал, что Linux- это ядро, а все остальное только обвязки. Оказывается все совершенно иначе!
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892930
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Aklin
Бинарники, если указана статическая линковка. SO если не указана.


Бинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно.

Aklin
В первом случае бывали примеры у меня, когда между разными машинами бинарник не переносился (даже в рамках одного семейства ОС и архитектуры)


Как при статической линковке могут возникать проблемы переносимости (если все что нужно находится внутри программы)?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892935
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzВсегда считал, что Linux- это ядро, а все остальное только обвязки.

В пределах эхотага Линукс это обобщённое название семейства операционных систем,
построенных на одноимённом ядре. Поскольку программистов, работающих непосредственно с
ядром, тут мало (если вообще есть) и они не создают топиков.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892939
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzБинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не
понятно.

Это две совершенно разные вещи, используемые совершенно разными способами на совершенно
разных этапах. Как ты их мешаешь в одну кучу - непонятно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892948
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov

BanditKarapuzБинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не
понятно.

Это две совершенно разные вещи, используемые совершенно разными способами на совершенно
разных этапах. Как ты их мешаешь в одну кучу - непонятно.


О, пьяный мастер, а я их мешаю в одну кучу?
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892954
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuz
Dimitry Sibiryakov

пропущено...

Это две совершенно разные вещи, используемые совершенно разными способами на совершенно
разных этапах. Как ты их мешаешь в одну кучу - непонятно.


О, пьяный мастер, а я их мешаю в одну кучу?

Давай немножко я сверну топик в конструктивное русло.

Ты пришел с вопросом. Тебя интересует что включается в бинарник. И перформанс процесса линковки.
Вот чтобы все в топике пронклись с твоей проблемой - обрисуй ее действительно как проблему.
Озадачь нас.

Философские смыслы и ярлыки типа что называть линуксом мы поскипаем. Это неважно.
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892957
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BanditKarapuzа я их мешаю в одну кучу?

Да. Даже сабж у тебя показывает элементарное незнание процесса компиляции и исполнения
программ. Поэтому, как уже сказали, начни с "Hello World".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
    #39892964
BanditKarapuz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot mayton#22022878]
BanditKarapuz

Давай немножко я сверну топик в конструктивное русло.

Ты пришел с вопросом. Тебя интересует что включается в бинарник. И перформанс процесса линковки.
Вот чтобы все в топике пронклись с твоей проблемой - обрисуй ее действительно как проблему.
Озадачь нас.

Философские смыслы и ярлыки типа что называть линуксом мы поскипаем. Это неважно.


Вопрос вполне себе полно описан, и кто обладает достаточными знаниями, тот может на него ответить. Что за детские разводки "заинтересуй нас" и прочее? Вы считаете себя женщиной, которая при знакомстве за свою благосклонность выторговывает что- либо у мужчины?
...
Рейтинг: 0 / 0
25 сообщений из 39, страница 1 из 2
Форумы / C++ [игнор отключен] [закрыт для гостей] / При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]