Является ли gschemas.compiled конкретной архитектурой (могу ли я отправить ее с моей библиотекой python)? - PullRequest
1 голос
/ 26 мая 2019

Я работаю над библиотекой / приложением python, использующим Gtk.

Часть моего процесса сборки использует glib-compile-schemas для создания gschemas.compiled.

Если я включу gschemas.compiled в мою библиотеку, это сломает вещи, если кто-то попытается использовать мою библиотеку на чем-то вроде ARM или 32-битной Intel?

(я бы скомпилировал это после установки, но это кажется неподдерживаемым в setuptools, который я использую).

Ответы [ 2 ]

3 голосов
/ 26 мая 2019

Вы не должны поставлять скомпилированный gschemas.compiled кеш как часть вашего приложения - вместо этого вы должны просто отправить ваш *.gschema.xml файл.gschemas.compiled предназначен для общесистемного кэша всех файлов *.gschema.xml в (по умолчанию) /usr/share/glib-2.0/schemas и должен быть восстановлен менеджером пакетов после того, как приложение установит новую схему.

Debianимеет проверку Lintian , например, для предотвращения доставки пакетов gschemas.compiled.

Похоже, здесь есть ответы здесь, на askubuntu о том, как позвонить glib-compile-schemas вшаг после установки с использованием setuptools.

Чтобы ответить на ваш конкретный вопрос: да, вы должны рассматривать его как потенциально зависящий от архитектуры.

0 голосов
/ 26 мая 2019

Это не окончательный ответ, но я убедился, что файл одинаков для двух разных архитектур, собранных для пакета, и они одинаковы.

(пакеты debian i386 и arm64 для enchant).

Они были выбраны из-за разной битовой ширины (32 против 64) и разной архитектуры.

Если кто-нибудь напишет более точный ответ, я все равно приму это.

...