* [devel] Как собирать для python3?
@ 2012-03-19 8:12 Sergei Epiphanov
2012-03-19 11:00 ` Vitaly Kuznetsov
` (2 more replies)
0 siblings, 3 replies; 13+ messages in thread
From: Sergei Epiphanov @ 2012-03-19 8:12 UTC (permalink / raw)
To: Рассылка Devel
Добрый день!
Пытаюсь сделать так, чтобы блендер и ко собирались бы и обрабатывались
python3, а не python2. Попытка скомандовать через
%add_python_exclude_list %_libexec/%name
%add_python3_include_list %_libexec/%name
с треском провалилась (каталог получается правильным) на этапе проверки. Можно
узнать хотя бы в общих чертах принципы сборки под python3? Пакеты python3-dev
и rpm-build-python3 установлены.
Сама программа собирается в пакет, но только с отключением поиска зависимостей
питоньего хозяйства, но это некошерно:
AutoReqSkip: nopython
AutoProvSkip: nopython
--
С уважением, Епифанов Сергей
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-19 8:12 [devel] Как собирать для python3? Sergei Epiphanov
@ 2012-03-19 11:00 ` Vitaly Kuznetsov
2012-03-20 15:45 ` Sergey Kurakin
2012-03-20 14:40 ` Sergey Kurakin
2012-03-22 5:51 ` Vitaly Kuznetsov
2 siblings, 1 reply; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-19 11:00 UTC (permalink / raw)
To: devel
On Mon, 19 Mar 2012 12:12:48 +0400, Sergei Epiphanov wrote:
> Добрый день!
>
> Пытаюсь сделать так, чтобы блендер и ко собирались бы и
> обрабатывались
> python3, а не python2. Попытка скомандовать через
>
> %add_python_exclude_list %_libexec/%name
> %add_python3_include_list %_libexec/%name
>
> с треском провалилась (каталог получается правильным) на этапе
> проверки. Можно
> узнать хотя бы в общих чертах принципы сборки под python3? Пакеты
> python3-dev
> и rpm-build-python3 установлены.
>
> Сама программа собирается в пакет, но только с отключением поиска
> зависимостей
> питоньего хозяйства, но это некошерно:
>
> AutoReqSkip: nopython
> AutoProvSkip: nopython
Дайте мне, пожалуйста, ссылку на коммит, который вы собираете, я изучу
вопрос.
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-19 8:12 [devel] Как собирать для python3? Sergei Epiphanov
2012-03-19 11:00 ` Vitaly Kuznetsov
@ 2012-03-20 14:40 ` Sergey Kurakin
2012-03-21 6:05 ` Sergei Epiphanov
2012-03-22 5:51 ` Vitaly Kuznetsov
2 siblings, 1 reply; 13+ messages in thread
From: Sergey Kurakin @ 2012-03-20 14:40 UTC (permalink / raw)
To: ALT Linux Team development discussions
Добрый вечер.
On 19/03/12 12:12, Sergei Epiphanov wrote:
> Сама программа собирается в пакет, но только с отключением поиска зависимостей
> питоньего хозяйства, но это некошерно:
>
> AutoReqSkip: nopython
> AutoProvSkip: nopython
AutoReq: nopython
AutoProv: nopython
Эти две строки отключают поиск зависимости как раз только
по python2.7. А поиск зависимостей по Python3 при этом остается, если
установлен rpm-build-python3. Соответствующее значение для отключения
третьего называется nopython3.
Здесь всё кошерно. А то, что не находится ни одной зависимости по
модулям третьего питона -- так и в blender'е 2.49 они не находились ко
второму питону. Просто их там нет. Такое впечатление, что разработчики
Блендера, озабоченные всеобъемлющей кроссплатформенностью, изначально
пишут скрипты самодостаточными и не нуждающимися в нестандартных
модулях.
--
WBR,
Sergey Kurakin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-19 11:00 ` Vitaly Kuznetsov
@ 2012-03-20 15:45 ` Sergey Kurakin
0 siblings, 0 replies; 13+ messages in thread
From: Sergey Kurakin @ 2012-03-20 15:45 UTC (permalink / raw)
To: ALT Linux Team development discussions
On 19/03/12 15:00, Vitaly Kuznetsov wrote:
> On Mon, 19 Mar 2012 12:12:48 +0400, Sergei Epiphanov wrote:
>> Сама программа собирается в пакет, но только с отключением поиска
>> зависимостей
> Дайте мне, пожалуйста, ссылку на коммит, который вы собираете, я изучу
> вопрос.
Наверное, тёзка имел ввиду что-то вроде этого:
http://git.altlinux.org/people/kurakin/packages/?p=blender.git;a=tree;h=5a1500e7f5a36524fc705b0f2c07802aa367f423;hb=5a1500e7f5a36524fc705b0f2c07802aa367f423
Еще у меня была тестовая задача, из логов которой было видно,
что отключен поиск зависимостей только по python2.7, а поиск по python3
отрабатывал. Вот только задача почила, сделаю еще одну, пожалуй.
Кстати, никто не напомнит, с каким максимальным периодом
можно поливать задачу, чтобы она не засохла?
--
WBR,
Sergey Kurakin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-20 14:40 ` Sergey Kurakin
@ 2012-03-21 6:05 ` Sergei Epiphanov
2012-03-21 8:00 ` Sergey Kurakin
0 siblings, 1 reply; 13+ messages in thread
From: Sergei Epiphanov @ 2012-03-21 6:05 UTC (permalink / raw)
To: ALT Linux Team development discussions
On 20 марта 2012 18:40 Sergey Kurakin wrote:
> Здесь всё кошерно. А то, что не находится ни одной зависимости по
> модулям третьего питона -- так и в blender'е 2.49 они не находились ко
> второму питону. Просто их там нет. Такое впечатление, что разработчики
> Блендера, озабоченные всеобъемлющей кроссплатформенностью, изначально
> пишут скрипты самодостаточными и не нуждающимися в нестандартных
> модулях.
Не в этом дело. Я попробовал допилить пакеты, которые опираются на blender
(например openshot), то никакие шаманства не позволили мне заставить openshot
сделать зависимость python3.2(bpy) вместо python2.7(bpy). Спек я правил,
внедрял эти параметры (nopython), добавил python3-dev, rpm-build-python3.
Бился неделю, после чего решил спросить что же я делаю не так.
--
С уважением, Епифанов Сергей
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-21 6:05 ` Sergei Epiphanov
@ 2012-03-21 8:00 ` Sergey Kurakin
0 siblings, 0 replies; 13+ messages in thread
From: Sergey Kurakin @ 2012-03-21 8:00 UTC (permalink / raw)
To: ALT Linux Team development discussions
On 21/03/12 10:05, Sergei Epiphanov wrote:
> Не в этом дело. Я попробовал допилить пакеты, которые опираются на blender
> (например openshot), то никакие шаманства не позволили мне заставить openshot
> сделать зависимость python3.2(bpy) вместо python2.7(bpy).
Понятно. Именно этого я и опасался. Никак не наберусь решимости
совершить подход к вопросу хотя бы со стороны yafaray...
--
WBR,
Sergey Kurakin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-19 8:12 [devel] Как собирать для python3? Sergei Epiphanov
2012-03-19 11:00 ` Vitaly Kuznetsov
2012-03-20 14:40 ` Sergey Kurakin
@ 2012-03-22 5:51 ` Vitaly Kuznetsov
2012-03-22 5:57 ` Vitaly Kuznetsov
` (3 more replies)
2 siblings, 4 replies; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-22 5:51 UTC (permalink / raw)
To: devel; +Cc: Sergey Kurakin, Sergei Epiphanov
On Mon, 19 Mar 2012 12:12:48 +0400, Sergei Epiphanov wrote:
> Добрый день!
>
> Пытаюсь сделать так, чтобы блендер и ко собирались бы и
> обрабатывались
> python3, а не python2.
У нас действительно нет механизма сказать "Вот в этом каталоге -
python3, а не python3", есть только механизм переключения компиляции
(%add_python{,3}_compile_include/%add_python{,3}_compile_exclude) и
механизм выбрасывания ненужных найденных зависимостей
(%add_python{,3}_req_skip).
Я хочу добавить новый механизм вида %add_python3_path для указания
того, что в конкретном каталоге .py файлы следует рассматривать как
python3 со всеми вытекающими (компиляция, поиск requires и provides)
последствиями.
С blender при этом надо будет поступить следующим образом:
diff --git a/blender.spec b/blender.spec
index a1378f5..88921cc 100644
--- a/blender.spec
+++ b/blender.spec
@@ -22,16 +22,11 @@ Patch10:
0011-look_for_droid_ttf_with_fontconfig.patch
BuildRequires(pre): rpm-build-python3
-Provides: python%_python3_version(Blender)
-Provides: python%_python3_version(bpy)
-Provides: python%_python3_version(BPyMesh)
+%add_python3_path /usr/lib/blender/scripts/
# Automatically added by buildreq on Fri Feb 17 2012
BuildRequires: cmake gcc-c++ libSDL-devel libXi-devel
libavdevice-devel libavformat-devel libfftw3-devel libfreetype-devel
libglew-devel libjpeg-devel libopenal-devel
-AutoReq: nopython
-AutoProv: nopython
-
%description
Fully integrated creation suite, offering a broad range of essential
tools for the creation of 3D content, including modeling, uv-mapping,
При этом на выходе мы получим следующие python3-зависимости:
$ rpm -qp --requires ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm |
grep python3.2\(.*\)
python3.2(BPyWindow)
python3.2(_bpy)
python3.2(array)
python3.2(bge)
python3.2(bgl)
python3.2(binascii)
python3.2(bisect)
python3.2(blf)
python3.2(chunk)
python3.2(codecs)
python3.2(collections)
python3.2(configparser)
python3.2(contextlib)
python3.2(datetime)
python3.2(encodings)
python3.2(functools)
python3.2(hashlib)
python3.2(http)
python3.2(inspect)
python3.2(io)
python3.2(json)
python3.2(math)
python3.2(mathutils)
python3.2(mmap)
python3.2(os)
python3.2(pickle)
python3.2(platform)
python3.2(queue)
python3.2(random)
python3.2(re)
python3.2(rlcompleter)
python3.2(select)
python3.2(shutil)
python3.2(socket)
python3.2(socketserver)
python3.2(string)
python3.2(struct)
python3.2(subprocess)
python3.2(tempfile)
python3.2(textwrap)
python3.2(threading)
python3.2(time)
python3.2(traceback)
python3.2(urllib)
python3.2(webbrowser)
python3.2(xml)
python3.2(xmlrpc)
python3.2(zipfile)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-22 5:51 ` Vitaly Kuznetsov
@ 2012-03-22 5:57 ` Vitaly Kuznetsov
2012-03-22 6:42 ` Sergei Epiphanov
` (2 subsequent siblings)
3 siblings, 0 replies; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-22 5:57 UTC (permalink / raw)
To: devel
On Thu, 22 Mar 2012 09:51:43 +0400, Vitaly Kuznetsov wrote:
> On Mon, 19 Mar 2012 12:12:48 +0400, Sergei Epiphanov wrote:
>> Добрый день!
>>
>> Пытаюсь сделать так, чтобы блендер и ко собирались бы и
>> обрабатывались
>> python3, а не python2.
>
> У нас действительно нет механизма сказать "Вот в этом каталоге -
> python3, а не python3"
"python3, а не python2", конечно же ;)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-22 5:51 ` Vitaly Kuznetsov
2012-03-22 5:57 ` Vitaly Kuznetsov
@ 2012-03-22 6:42 ` Sergei Epiphanov
2012-03-23 12:57 ` Vitaly Kuznetsov
3 siblings, 0 replies; 13+ messages in thread
From: Sergei Epiphanov @ 2012-03-22 6:42 UTC (permalink / raw)
To: ALT Linux Team development discussions
On 22 марта 2012 09:51 Vitaly Kuznetsov wrote:
> Я хочу добавить новый механизм вида %add_python3_path для указания
> того, что в конкретном каталоге .py файлы следует рассматривать как
> python3 со всеми вытекающими (компиляция, поиск requires и provides)
> последствиями.
Ждём отмашки!
> При этом на выходе мы получим следующие python3-зависимости:
>
> $ rpm -qp --requires ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm |
> grep python3.2\(.*\)
> python3.2(BPyWindow)
> python3.2(_bpy)
Это должно было попасть в секцию Provides, а не Requires. Иначе пакет не
встанет. Но это уже лучше, чем ничего! ;)
--
С уважением, Епифанов Сергей
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
@ 2012-03-22 7:29 ` Vitaly Kuznetsov
2012-03-22 10:25 ` Vitaly Kuznetsov
2012-03-22 11:44 ` Sergei Epiphanov
0 siblings, 2 replies; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-22 7:29 UTC (permalink / raw)
To: Sergei Epiphanov; +Cc: ALT Linux Team general development
On Thu, 22 Mar 2012 10:39:07 +0400, Sergei Epiphanov wrote:
> Добрый день!
>
> On 22 марта 2012 09:51 Vitaly Kuznetsov wrote:
>> Я хочу добавить новый механизм вида %add_python3_path для указания
>> того, что в конкретном каталоге .py файлы следует рассматривать как
>> python3 со всеми вытекающими (компиляция, поиск requires и provides)
>> последствиями.
>
> То есть пока со сборкой blender подождать до выхода этой
> функциональности?
Я постараюсь собрать rpm-build-python/rpm-build-python3 сегодня.
>> При этом на выходе мы получим следующие python3-зависимости:
>>
>> $ rpm -qp --requires
>> ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm |
>> grep python3.2\(.*\)
>
> Тогда уж необходимо, чтобы они (зависимости самого blender) были как
> Provides, а не Requires. А то такой пакет не встанет никуда, так как
> он требует самого
> себя, но не знает об этом. :)
blender таскает модули по нестандартному пути (кстати, зачем?). Для
того, чтобы воспринимать их как модули нужно добавить в spec следующее:
%add_python3_lib_path /usr/lib/blender/scripts/modules
(следите за отсутствием trailing slash, с ним работать не будет)
Мы получим вот что:
$ rpm -qp --provides ~/RPM/RPMS/x86_64/blender-2.62-alt0.2.x86_64.rpm
python3.2(addon_utils)
python3.2(animsys_refactor)
python3.2(blend_render_info)
python3.2(bpy)
python3.2(bpy.ops)
python3.2(bpy.path)
python3.2(bpy.utils)
python3.2(bpy_extras)
python3.2(bpy_extras.anim_utils)
python3.2(bpy_extras.image_utils)
python3.2(bpy_extras.io_utils)
python3.2(bpy_extras.keyconfig_utils)
python3.2(bpy_extras.mesh_utils)
python3.2(bpy_extras.object_utils)
python3.2(bpy_extras.view3d_utils)
python3.2(bpy_types)
python3.2(bpyml)
python3.2(bpyml_ui)
python3.2(console)
python3.2(console.complete_calltip)
python3.2(console.complete_import)
python3.2(console.complete_namespace)
python3.2(console.intellisense)
python3.2(console_python)
python3.2(console_shell)
python3.2(graphviz_export)
python3.2(keyingsets_utils)
python3.2(rna_info)
python3.2(rna_prop_ui)
python3.2(rna_xml)
python3.2(sys_info)
blender = 2.62-alt0.2
Но, видимо, этого будет недостаточно, всё равно останутся странные
зависимости вида python3.2(_bpy)
С ними легко побороться с помощью
%add_python3_req_skip _bpy
либо нужно разобрать откуда она таки импортирует эти недостающие модули
и включить эти пути с помощью %add_python3_lib_path. Но это имеет смысл
только в том случае, если эту зависимость надо экспортировать в пакете
(и, соответственно, использовать в каких-то других пакетах).
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-22 7:29 ` Vitaly Kuznetsov
@ 2012-03-22 10:25 ` Vitaly Kuznetsov
2012-03-22 11:44 ` Sergei Epiphanov
1 sibling, 0 replies; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-22 10:25 UTC (permalink / raw)
To: devel
On Thu, 22 Mar 2012 11:29:21 +0400, Vitaly Kuznetsov wrote:
>>
> Но, видимо, этого будет недостаточно, всё равно останутся странные
> зависимости вида python3.2(_bpy)
> С ними легко побороться с помощью
> %add_python3_req_skip _bpy
Если ничего из нижеприведённого не является настоящим анметом, то
удавить или экспортировать следует следующее:
python3.2(_bpy)
python3.2(BPyWindow)
python3.2(bge)
python3.2(bgl)
python3.2(blf)
python3.2(mathutils)
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-22 7:29 ` Vitaly Kuznetsov
2012-03-22 10:25 ` Vitaly Kuznetsov
@ 2012-03-22 11:44 ` Sergei Epiphanov
1 sibling, 0 replies; 13+ messages in thread
From: Sergei Epiphanov @ 2012-03-22 11:44 UTC (permalink / raw)
To: ALT Linux Team development discussions
On 22 марта 2012 11:29 Vitaly Kuznetsov wrote:
> blender таскает модули по нестандартному пути (кстати, зачем?). Для
> того, чтобы воспринимать их как модули нужно добавить в spec следующее:
> %add_python3_lib_path /usr/lib/blender/scripts/modules
> (следите за отсутствием trailing slash, с ним работать не будет)
Спасибо большое за советы!
Blender вообще приходится допиливать до более-менее нормального состояния.
Попробую (для пробы) перенести его питоньи файлы в подкаталоги python3, может,
дело пойдёт на лад со сборкой.
--
С уважением, Епифанов Сергей
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [devel] Как собирать для python3?
2012-03-22 5:51 ` Vitaly Kuznetsov
` (2 preceding siblings ...)
@ 2012-03-23 12:57 ` Vitaly Kuznetsov
3 siblings, 0 replies; 13+ messages in thread
From: Vitaly Kuznetsov @ 2012-03-23 12:57 UTC (permalink / raw)
To: devel
On Thu, 22 Mar 2012 09:51:43 +0400, Vitaly Kuznetsov wrote:
> On Mon, 19 Mar 2012 12:12:48 +0400, Sergei Epiphanov wrote:
>> Добрый день!
>>
>> Пытаюсь сделать так, чтобы блендер и ко собирались бы и
>> обрабатывались
>> python3, а не python2.
>
> У нас действительно нет механизма сказать "Вот в этом каталоге -
> python3, а не python3", есть только механизм переключения компиляции
> (%add_python{,3}_compile_include/%add_python{,3}_compile_exclude) и
> механизм выбрасывания ненужных найденных зависимостей
> (%add_python{,3}_req_skip).
>
> Я хочу добавить новый механизм вида %add_python3_path для указания
> того, что в конкретном каталоге .py файлы следует рассматривать как
> python3 со всеми вытекающими (компиляция, поиск requires и provides)
> последствиями.
>
Собственно, механизм %add_python3_path реализован, на
altlinux.org/Python3 упомянут.
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2012-03-23 12:57 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-19 8:12 [devel] Как собирать для python3? Sergei Epiphanov
2012-03-19 11:00 ` Vitaly Kuznetsov
2012-03-20 15:45 ` Sergey Kurakin
2012-03-20 14:40 ` Sergey Kurakin
2012-03-21 6:05 ` Sergei Epiphanov
2012-03-21 8:00 ` Sergey Kurakin
2012-03-22 5:51 ` Vitaly Kuznetsov
2012-03-22 5:57 ` Vitaly Kuznetsov
2012-03-22 6:42 ` Sergei Epiphanov
2012-03-22 7:29 ` Vitaly Kuznetsov
2012-03-22 10:25 ` Vitaly Kuznetsov
2012-03-22 11:44 ` Sergei Epiphanov
2012-03-23 12:57 ` Vitaly Kuznetsov
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git