powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Установка skytools
9 сообщений из 9, страница 1 из 1
Установка skytools
    #40117898
duffy82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, ОС 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
Установка skytools
    #40117906
Alexander A. Sak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже, надо использовать второй питон:

Код: 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
Установка skytools
    #40117910
duffy82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexander A. Sak,

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

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

С питоном2 ошибки полезли в других местах, да
...
Рейтинг: 0 / 0
Установка skytools
    #40118012
duffy82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
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
Установка skytools
    #40118030
Melkij
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
Установка skytools
    #40118070
duffy82
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Melkij,
спасибо, я установил отдельно
Код: python
1.
/usr/local/bin/pgqd


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


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


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