Я выяснил, как удалить пути из SO-файлов.
Я определил, что пути были встроены в отладочную информацию, используя эту команду:
readelf --debug-dump=line speedups.so | less
Команда strip
можетудалите отладочную информацию из SO-файлов, поэтому я добавил это в свою спецификацию RPM:
BuildRequires: binutils
set +e
find "%{buildroot}{%_prefix}/lib64/python2.7/site-packages" -type f -name "*.so" | while read so_file
do
strip --strip-debug "$so_file"
done
set -e
Примечание: strip
segfaults в некоторых SO-файлах, и не понятно почему.Я отключил немедленный выход с помощью set +e
, чтобы сборка игнорировала их.