Задать вопрос
@brbwk

Почему нет инфы о библиотеках в procfc файле maps, которые в сишном коде подключены и используются?

Написал простую сишную прогу, в которой подключил либу pthread. Чтобы компилятор случайно не дооптимизировался и не выкинул либу, использую функцию создания потока, в целевой функции потока вечный цикл.
Компилирую gcc -o outfile source.c -lpthread. То есть собираю без всяких статиков, чтобы были зависимости к подключенным библиотекам. Далее запускаю процесс, чекаю /proc/pid/maps. Там нет ни единого упоминания к libpthread. Что я делаю не так? Мне нужно чтобы адрес, куда загружена либа, был в этом файле.
  • Вопрос задан
  • 101 просмотр
Подписаться 1 Простой 5 комментариев
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Компилирую gcc -o outfile source.c -lpthread. То есть собираю без всяких статиков, чтобы были зависимости к подключенным библиотекам. Далее запускаю процесс, чекаю /proc/pid/maps. Там нет ни единого упоминания к libpthread.

100500 лет назад libpthread объединилась с glibc и теперь хоть и существует отдельно, чтобы программы использующие -lpthread продолжали собираться, внутри пустая. Короче, ты выбрал неудачного кандидата для экспериментов.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы