Проблема, скорее всего, связана с изменениями между python2 и python3
В python2
''
имеет тип str
и, следовательно, поддерживает ''.decode()
u''
типа unicode
и, таким образом, поддерживает u''.encode()
В python3 это полностью изменено
''
относится к типу unicode
и поэтому поддерживает ''.encode()
u''
относится к типу byte
и, таким образом, поддерживает u''.decode()
в вашем случае, в зависимости от типа ваших переменных, вам может потребоваться сделать что-то вроде
s = title + b' ' + author + b' ' + text
просто прибегнуть к Python 2:)
Статическая библиотека является просто набором объектных файлов. При компиляции программы против статической библиотеки объектный код для функций, используемых программой, копируется с библиотеки в исполняемый файл. Соединение против статической библиотеки не заставит функций за пределами той библиотеки быть включенными в Ваш код.
A. файл является в основном просто пакетом.o файлов. Можно продемонстрировать это использование ar
инструмент.
Например, для отображения содержания библиотеки:
ar -t libsamplerate.a
Создать.a файл с нуля:
ar -r tim.a *.txt
Просто объектный код для libsamplerate. Статически соединение против единственной библиотеки не делает все библиотеки связанными статически; это было бы Плохо.