Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Установка skytools / 9 сообщений из 9, страница 1 из 1
06.12.2021, 19:44
    #40117898
duffy82
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
Здравствуйте, ОС Ubuntu 20.04, postgresql-12, устанавливаю skytools-2.1.12:
Код: python
1.
./configure --with-python=/usr/bin/python3 --with-pgconfig=/usr/lib/postgresql/12/bin/pg_config


Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
checking for python... /usr/bin/python3
checking for pg_config... /usr/lib/postgresql/12/bin/pg_config
checking for GNU make... make
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for unsetenv... yes
configure: creating ./config.status
config.status: creating config.mak
postgres@ubuntu:~/skytools/skytools-2.1.12$



на этапе make происходит ошибка
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
postgres@ubuntu:~/skytools/skytools-2.1.12$ make
/usr/bin/python3 setup.py build
  File "setup.py", line 9
    print "please run ./configure && make first"
          ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("please run ./configure && make first")?
make: *** [Makefile:16: python-all] Error 1
postgres@ubuntu:~/skytools/skytools-2.1.12$



Насколько я понял, в файле setup.py который в том числе находится в этой директории, на 9 строке не хватает скобок, есть кто-нибудь, кто скажет где именно?
Файл setup.py:
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
#! /usr/bin/env python

import sys, os.path, re, glob
from distutils.core import setup
from distutils.extension import Extension

# check if configure has run
if not os.path.isfile('config.mak'):
    print "please run ./configure && make first"
    print "Note: setup.py is supposed to be run from Makefile"
    sys.exit(1)

# load version
buf = open("configure.ac","r").read(256)
m = re.search("AC_INIT[(][^,]*,\s+([^)]*)[)]", buf)
ac_ver = m.group(1)

share_dup_files = [
   'sql/pgq/pgq.sql',
   'sql/londiste/londiste.sql',
   'sql/pgq_ext/pgq_ext.sql',
   'sql/logtriga/logtriga.sql',
]
if os.path.isfile('sql/txid/txid.sql'):
   share_dup_files.append('sql/txid/txid.sql')

# run actual setup
setup(
    name = "skytools",
    license = "BSD",
    version = ac_ver,
    maintainer = "Marko Kreen",
    maintainer_email = "marko.kreen@skype.net",
    url = "http://pgfoundry.org/projects/skytools/",
    package_dir = {'': 'python'},
    packages = ['skytools', 'londiste', 'pgq'],
    scripts = ['python/londiste.py', 'python/pgqadm.py', 'python/walmgr.py',
               'scripts/cube_dispatcher.py', 'scripts/queue_mover.py',
               'scripts/table_dispatcher.py', 'scripts/bulk_loader.py',
               'scripts/scriptmgr.py', 'scripts/queue_splitter.py',
               'scripts/skytools_upgrade.py',
              ],
    data_files = [
      ('share/doc/skytools/conf', [
        'python/conf/londiste.ini',
        'python/conf/pgqadm.ini',
        'python/conf/skylog.ini',
        'python/conf/wal-master.ini',
        'python/conf/wal-slave.ini',
        'scripts/queue_mover.ini.templ',
        'scripts/queue_splitter.ini.templ',
        'scripts/cube_dispatcher.ini.templ',
        'scripts/table_dispatcher.ini.templ',
        'scripts/bulk_loader.ini.templ'',
        'scripts/scriptmgr.ini.templ',
        ]),
      ('share/skytools', share_dup_files),
      ('share/skytools/upgrade/final', glob.glob('upgrade/final/*.sql')),
      ],
    ext_modules=[Extension("skytools._cquoting", ['python/modules/cquoting.c'])],
)
...
Рейтинг: 0 / 0
06.12.2021, 20:06
    #40117906
Alexander A. Sak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
Похоже, надо использовать второй питон:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
$ python2
Python 2.7.17 (default, Feb 27 2021, 15:10:58) 
[GCC 7.5.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> print "Hello"
Hello
>>> quit()

$ python3
Python 3.6.9 (default, Jan 26 2021, 15:33:00) 
[GCC 8.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> print "Hello"
  File "<stdin>", line 1
    print "Hello"
                ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("Hello")?
>>> 

Вроде одно из изменений в третьем Питоне -- вот эти вот обязательные скобки в print.
...
Рейтинг: 0 / 0
06.12.2021, 20:15
    #40117910
duffy82
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
Alexander A. Sak,

Спасибо, попробую!
...
Рейтинг: 0 / 0
06.12.2021, 22:17
    #40117935
D0KX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
похоже в python 3 стали использовать вывод, через функцию, и теперь выводимый текст надо брать в скобки.
О чём вам и говорилось в ошибке >> Did you mean print("please run ./configure && make first")?
Так что можно попробовать и с python3, но взяв выводимый текст в 9 и 10 строке в скобки.
Но ошибки могут полезть в других местах.
...
Рейтинг: 0 / 0
06.12.2021, 22:22
    #40117937
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
duffy82,

а что именно вам из skytools нужно? На всякий случай уточняю, ведь например тот же pgqd давно живёт отдельно в https://github.com/pgq/pgqd и патчи поддержки сборкой третьим питоном помнится я видел принятые.
...
Рейтинг: 0 / 0
07.12.2021, 10:39
    #40118010
duffy82
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
D0KX,

С питоном2 ошибки полезли в других местах, да
...
Рейтинг: 0 / 0
07.12.2021, 10:42
    #40118012
duffy82
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
Melkij,

Мне надо настроить репликацию при помощи londist, каталог pgqd с того гита
Код: python
1.
2.
postgres@ubuntu:~/skytools/pgqd$ ls
autogen.sh  config.mak.in  configure.ac  lib  Makefile  NEWS.rst  pgqd.ini  README.rst  src



Можете подсказать дальнейшие действия?
...
Рейтинг: 0 / 0
07.12.2021, 11:12
    #40118030
Melkij
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
duffy82,

а штатный pub/sub точно не подходит? https://www.postgresql.org/docs/12/logical-replication-publication.html

https://packages.ubuntu.com/focal/python3-londiste оно?
https://packages.ubuntu.com/focal/pgqd - вот pgqd

duffy82
каталог pgqd с того гита

для заметок, сборка pgqd, а то найти сложно
Код: plaintext
1.
2.
3.
4.
5.
git submodule init
git submodule update
export PATH="/usr/pgsql-10/bin/:$PATH" #pg_config не в PATH, configure не пройдёт
make configure
./configure
make
...
Рейтинг: 0 / 0
07.12.2021, 12:38
    #40118070
duffy82
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Установка skytools
Melkij,
спасибо, я установил отдельно
Код: python
1.
/usr/local/bin/pgqd


Код: python
1.
/usr/bin/londiste


Посмотрим что дальше будет
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Установка skytools / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]