|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Предположим я использую в своей программе функцию strlen, для чего добавил директивы препроцессору: Код: plaintext 1. 2.
Что будет включено в мою программу: 1. Cомпилированные бинарники библиотеки libc (имеющие расширение so) 2. Исходные тексты стандартной библиотеки С (имеющие расширения cpp) и все вместе скомпилированно тем компилятором, который я исопльзую и с теми ключами, которые я ему задал. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 09:56 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz, Почему не попробовать? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 10:31 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp BanditKarapuz, Почему не попробовать? Как? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 10:41 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz PetroNotC Sharp BanditKarapuz, Почему не попробовать? Как? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 10:45 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp BanditKarapuz пропущено... Как? Что значит "разобрать выходную папку. До последнего байта"? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 10:58 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz, Мммм.... А какой практический интерес данного вопроса? Или чисто академический? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 11:06 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz, как всегда мы вынуждены додумывать доп. условия. Поскольку ты ссылаешся на расширение .so то можно предположить что тебя интересует конкретно поведение linux компилляторов gcc/clang. Я сомневаюсь что стандарт языка С как-то регламентирует это поведение (линковка). Тоесть твой вопрос касается не языка а конкретного компиллятора. Подтверди пожалуйста мое предположение. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 11:35 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz, если коротко, то зависит от ключей линкеру. При статической сборке CRTL будет прилинкована к твоей программе, иначе libc должна быть доступна программе в виде библиотеки. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 12:04 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz PetroNotC Sharp BanditKarapuz, Почему не попробовать? Как? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 13:06 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
mayton BanditKarapuz, как всегда мы вынуждены додумывать доп. условия. Поскольку ты ссылаешся на расширение .so то можно предположить что тебя интересует конкретно поведение linux компилляторов gcc/clang. Я сомневаюсь что стандарт языка С как-то регламентирует это поведение (линковка). Тоесть твой вопрос касается не языка а конкретного компиллятора. Подтверди пожалуйста мое предположение. Меня интересует возможность повышения производительности перекомпиляцией стандартной библиотеки С/С++ под свое железо. Это возможно проявится, если к моей программе линкуются не исходники, а готовые бинарники (тогда я могу их перекомпилировать под свою систему). Пробовать буду gcc и intel- компиляторы. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 13:26 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzМеня интересует возможность повышения производительности перекомпиляцией стандартной библиотеки С/С++ под свое железо. Судя по вопросу - это не твой уровень квалификации. Забей пока не изучишь Генту. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 13:36 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov Судя по вопросу - это не твой уровень квалификации. Забей пока не изучишь Генту. Если ваш уровень квалификации позволяет нарисовать путь движения падавана, то пожалуйста, ответьте на вопрос в топике: 1 или 2? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 13:46 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzответьте на вопрос в топике: 1 или 2? Ни то ни другое. Падаван в первую очередь должен двигаться в сторону оптимизации своего кода. Даже если профилер (которым ты, конечно же, уже воспользовался) показывает основные затраты в времени в системных вызовах, это не повод полагать, что оптимизация их внутренностей поможет. Гораздо больший эффект можно получить избежав этих вызовов. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 13:54 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov BanditKarapuzответьте на вопрос в топике: 1 или 2? Ни то ни другое. Падаван в первую очередь должен двигаться в сторону оптимизации своего кода. Даже если профилер (которым ты, конечно же, уже воспользовался) показывает основные затраты в времени в системных вызовах, это не повод полагать, что оптимизация их внутренностей поможет. Гораздо больший эффект можно получить избежав этих вызовов. О великий учитель, а вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:01 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzа вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)? На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не путаю. Изучай Генту. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:12 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Бинарники, если указана статическая линковка. SO если не указана. В первом случае бывали примеры у меня, когда между разными машинами бинарник не переносился (даже в рамках одного семейства ОС и архитектуры) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:17 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov BanditKarapuzа вы не путаете понятия "системный вызов" (т.е. обращение к ОС) и обращение к стандартной библиотеке С/С++ (где собраны функции не только обращения к ресурсам компьютера)? На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не путаю. Изучай Генту.Причем эти библиотеки могут быть разных версий. Если вы соберете программу с динамической линковкой с рассчетом на одну версию, а на компьютере ее не окажется, ваша программа не запустится. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:18 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov На линуксе "стандартная библиотека С" является неотъемлемой частью ОС. Так что нет, не путаю. Изучай Генту. Всегда считал, что Linux- это ядро, а все остальное только обвязки. Оказывается все совершенно иначе! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:21 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Aklin Бинарники, если указана статическая линковка. SO если не указана. Бинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно. Aklin В первом случае бывали примеры у меня, когда между разными машинами бинарник не переносился (даже в рамках одного семейства ОС и архитектуры) Как при статической линковке могут возникать проблемы переносимости (если все что нужно находится внутри программы)? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:26 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzВсегда считал, что Linux- это ядро, а все остальное только обвязки. В пределах эхотага Линукс это обобщённое название семейства операционных систем, построенных на одноимённом ядре. Поскольку программистов, работающих непосредственно с ядром, тут мало (если вообще есть) и они не создают топиков. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:30 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzБинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно. Это две совершенно разные вещи, используемые совершенно разными способами на совершенно разных этапах. Как ты их мешаешь в одну кучу - непонятно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:33 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov BanditKarapuzБинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно. Это две совершенно разные вещи, используемые совершенно разными способами на совершенно разных этапах. Как ты их мешаешь в одну кучу - непонятно. О, пьяный мастер, а я их мешаю в одну кучу? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:43 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz Dimitry Sibiryakov пропущено... Это две совершенно разные вещи, используемые совершенно разными способами на совершенно разных этапах. Как ты их мешаешь в одну кучу - непонятно. О, пьяный мастер, а я их мешаю в одну кучу? Давай немножко я сверну топик в конструктивное русло. Ты пришел с вопросом. Тебя интересует что включается в бинарник. И перформанс процесса линковки. Вот чтобы все в топике пронклись с твоей проблемой - обрисуй ее действительно как проблему. Озадачь нас. Философские смыслы и ярлыки типа что называть линуксом мы поскипаем. Это неважно. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:48 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzа я их мешаю в одну кучу? Да. Даже сабж у тебя показывает элементарное незнание процесса компиляции и исполнения программ. Поэтому, как уже сказали, начни с "Hello World". Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:49 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
[quot mayton#22022878] BanditKarapuz Давай немножко я сверну топик в конструктивное русло. Ты пришел с вопросом. Тебя интересует что включается в бинарник. И перформанс процесса линковки. Вот чтобы все в топике пронклись с твоей проблемой - обрисуй ее действительно как проблему. Озадачь нас. Философские смыслы и ярлыки типа что называть линуксом мы поскипаем. Это неважно. Вопрос вполне себе полно описан, и кто обладает достаточными знаниями, тот может на него ответить. Что за детские разводки "заинтересуй нас" и прочее? Вы считаете себя женщиной, которая при знакомстве за свою благосклонность выторговывает что- либо у мужчины? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:54 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz Как при статической линковке могут возникать проблемы переносимости (если все что нужно находится внутри программы)? gcc -march=native и опа - на другом процессоре может и не запуститься. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:57 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
[quot BanditKarapuz#22022895] mayton пропущено... Вопрос вполне себе полно описан, и кто обладает достаточными знаниями, тот может на него ответить. Что за детские разводки "заинтересуй нас" и прочее? Вы считаете себя женщиной, которая при знакомстве за свою благосклонность выторговывает что- либо у мужчины? Тонко замечено. Но тебе прилетает желтая карточка. Я как модератор подраздела прошу тебя сейчас и на будуще больше не использовать такие термины и способы ведения дискуссии. Надюсь на твою адекватность и понимание. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 14:58 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Barlone BanditKarapuz Как при статической линковке могут возникать проблемы переносимости (если все что нужно находится внутри программы)? gcc -march=native и опа - на другом процессоре может и не запуститься. Причем тут линковка? Это вопрос компиляции и относится это не только к библиотеке, но и ко всей программе. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:02 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz, вам уже ответили, при компиляции вашей программы исходники libc не используются. Результат компиляции вашего исходника будет линковаться либо со статической библиотекой .a, либо с динамической .so ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:03 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Barlone BanditKarapuz, вам уже ответили, при компиляции вашей программы исходники libc не используются. Результат компиляции вашего исходника будет линковаться либо со статической библиотекой .a, либо с динамической .so Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:06 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzВопрос вполне себе полно описан, и кто обладает достаточными знаниями, тот может на него ответить "Один дурак задаст вопрос такой, что сотня мудрецов ответить неосилят." (с) 1. Линковка - название вполне конкретного этапа сборки программы в котором исходники не участвуют никак. Никогда. Технически не могут. 2. Shared Object-ы не включаются в программу. Никак. Никогда. Технически не могут. 3. Исходные тексты стандартной библиотеки обычно вообще на компьютере отсутствуют, поскольку напрочь никому не нужны. Вот это - ответы на твои вопросы. Удовлетворён?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:06 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuzПричем тут линковка? Подними глаза повыше: ты собственными пальцами написал её в сабже. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:08 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz Бинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно. BanditKarapuz Как при статической линковке могут возникать проблемы переносимости (если все что нужно находится внутри программы)? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 18:07 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Aklin BanditKarapuz Бинарники- это возможно *.so, а возможно и *.a. Так что как вы их противопоставляете- не понятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 13:07 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Aklin BanditKarapuz Но у меня был такой случай. На одной машине собиралось приложение для библиотеки одной версии, которой на другой машине не было. Функции в обоих случаях назывались одинаково, но приложение не запустилось, требуя библиотеку определенной версии , то есть по имени файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 13:34 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Aklin BanditKarapuz Но у меня был такой случай. На одной машине собиралось приложение для библиотеки одной версии, которой на другой машине не было. Функции в обоих случаях назывались одинаково, но приложение не запустилось, требуя библиотеку определенной версии , то есть по имени файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 13:34 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz Предположим я использую в своей программе функцию strlen, для чего добавил директивы препроцессору: Код: plaintext 1. 2.
Что будет включено в мою программу: 1. Cомпилированные бинарники библиотеки libc (имеющие расширение so) 2. Исходные тексты стандартной библиотеки С (имеющие расширения cpp) и все вместе скомпилированно тем компилятором, который я исопльзую и с теми ключами, которые я ему задал. Ни то, и ни другое. Тебе это на твоём уровне понимания не объяснить. Это очень сложно. Тебе надо брать книги, и читать. Фундаментальные, хорошие книги, а не говно какое-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 14:31 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
BanditKarapuz mayton BanditKarapuz, как всегда мы вынуждены додумывать доп. условия. Поскольку ты ссылаешся на расширение .so то можно предположить что тебя интересует конкретно поведение linux компилляторов gcc/clang. Я сомневаюсь что стандарт языка С как-то регламентирует это поведение (линковка). Тоесть твой вопрос касается не языка а конкретного компиллятора. Подтверди пожалуйста мое предположение. Меня интересует возможность повышения производительности перекомпиляцией стандартной библиотеки С/С++ под свое железо. Это возможно проявится, если к моей программе линкуются не исходники, а готовые бинарники (тогда я могу их перекомпилировать под свою систему). Пробовать буду gcc и intel- компиляторы. Но объектные файлы и inline-функции и интринсики УЖЕ скомпилированы под твою конкретную платформу, под твоё железо. нет, смысла в этом нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 14:35 |
|
При использовании стандартной библиотеки С в программу линкуются исходники или бинарники?
|
|||
---|---|---|---|
#18+
Aklin Aklin пропущено... SO внутрь не линкуется емнип, остается ссылка на функцию в библиотеке, с названием функции и названием библиотеки, конкретного адреса там не будет. Но у меня был такой случай. На одной машине собиралось приложение для библиотеки одной версии, которой на другой машине не было. Функции в обоих случаях назывались одинаково, но приложение не запустилось, требуя библиотеку определенной версии , то есть по имени файла. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2019, 16:30 |
|
|
start [/forum/topic.php?all=1&fid=57&tid=2017514]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 285ms |
total: | 449ms |
0 / 0 |