Статические Библиотеки по умолчанию живут в /usr/lib
или /usr/lib64
но я удалил всех их в своей ОС с этой командой:
find / -name *.a -exec rm -rf {} \;
Мой Linux уже в порядке, и все работает хорошее!
Мы можем сказать?
"Package.rpm или *.deb содержат выходы компилятора, только им нужны совместно использованные библиотеки.
И когда мы устанавливаем программное обеспечение от исходного кода, если в структуре пользуются статической библиотекой, компоновщиком в во время компиляции, Копия статические библиотеки к, он - исполняемый файл.
Без *.a
файлы в моей системе, возможно, в будущем, если я установил бы программное обеспечение от исходного кода, я столкнусь с проблемами"
Объясните это мне простым способом
Статические библиотеки являются библиотеками, пользовавшимися двоичными файлами во время компиляции. Они обычно не используются снова во времени выполнения, поскольку они связаны со скомпилированным двоичным файлом во время компиляции и становятся частью самого двоичного файла.
кроме того, в реализации, это не общие для двоичные файлы, только двоичный файл, который компилируется с определенной статической библиотекой (библиотеками), использование что (они). Таким образом в приложении, это вполне напротив статически связанных библиотек.
Примечание, что, статические библиотеки заканчиваются в .a
, в то время как динамические библиотеки заканчиваются в .so
.
Статические библиотеки являются двоичными автономными блоками скомпилированного исходного кода, который Вы "импортируете" в своем приложении когда сборка это статическим способом.
Действительно, программа вызвала компоновщика, выполните своего рода "копию и вставку" их скомпилированного кода наряду с Вашим скомпилированным исходным кодом (это немного более сложно, но это объяснение может быть, идут хорошо у, отвечают на Ваш запрос...).
Затем в сообщении, что Вы сообщили в OP, говорится в синтезе, что удаление статических библиотек из каталога "lib" не генерирует проблемы к установленным программам, потому что, как сказано, они уже "вставляются" в двоичных файлах установленных программ, и это может произойти в Linux, потому что его программы обычно распределяются directely их нескомпилированным исходным кодом, и таким образом, им нужен шаг компиляции, это обычно это сделано через с об/мин или другими менеджеры по пакетам/установке Linux.
Вместо этого поскольку всегда в добавленном сообщении говорится при установке новых программ затем установка могла бы перестать работать, если им нужно удаленных, освобождает, потому что при компиляции, компоновщик не найдет необходимым (сослался) статичный, освобождает.
я надеюсь, что это ясно, жаль о моем плохом английском языке..