okbob / pspg

Unix pager (with very rich functionality) designed for work with tables. Designed for PostgreSQL, but MySQL is supported too. Works well with pgcli too. Can be used as CSV or TSV viewer too. It supports searching, selecting rows, columns, or block and export selected area to clipboard.
BSD 2-Clause "Simplified" License
2.43k stars 85 forks source link

Support for Ubuntu 18.04? #212

Closed df7cb closed 1 year ago

df7cb commented 1 year ago

Until recently, pspg could be compiled on Ubuntu 18.04 (bionic), but that no longer works:

:21:37 gcc  csv.o print.o commands.o unicode.o themes.o pspg.o config.o sort.o pgclient.o args.o infra.o table.o string.o export.o linebuffer.o bscommands.o readline.o inputs.o theme_loader.o st_menu.o st_menu_styles.o menu.o -o pspg -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -lm  -lreadline -lpanelw -lncursesw -ltinfo   -lpq
14:21:37 pspg.o: In function `main':
14:21:37 ./src/pspg.c:6731: undefined reference to `reset_color_pairs'
14:21:37 collect2: error: ld returned 1 exit status

I can disable building pspg for bionic on apt.postgresql.org, and since it's EOL in a few months anyway, it's not really a problem, so this is more a heads-up in case this wasn't intended.

okbob commented 1 year ago

I removed this call, so it should be compilable again. I tried to fix some issue #211 but it doesn't help (probably, missing user feedback), and other users didn't reported problems.

df7cb commented 1 year ago

Thanks!

df7cb commented 1 year ago

A similar problem seems back in 5.6.0, again on Ubuntu bionic:

17:11:51 gcc  csv.o print.o commands.o unicode.o themes.o pspg.o config.o sort.o pgclient.o args.o infra.o table.o string.o export.o linebuffer.o bscommands.o readline.o inputs.o theme_loader.o st_menu.o st_menu_styles.o menu.o -o pspg -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -lm  -lreadline -lpanelw -lncursesw -ltinfo   -lpq
17:11:51 themes.o: In function `ncurses_theme_attr':
17:11:51 ./src/themes.c:353: undefined reference to `init_extended_pair'
17:11:51 st_menu_styles.o: In function `set_rgb_color_pair':
17:11:51 ./src/st_menu_styles.c:118: undefined reference to `init_extended_pair'
17:11:51 st_menu_styles.o: In function `set_color_pair':
17:11:51 ./src/st_menu_styles.c:153: undefined reference to `init_extended_pair'
17:11:51 collect2: error: ld returned 1 exit status

https://pgdgbuild.dus.dg-i.net/job/pspg-binaries/architecture=i386,distribution=bionic/82/console

(We are 5 months from the EOL date of bionic, so it might not be worth the trouble to avoid these functions.)

okbob commented 1 year ago

ne 4. 12. 2022 v 17:14 odesílatel Christoph Berg @.***> napsal:

A similar problem seems back in 5.6.0, again on Ubuntu bionic:

17:11:51 gcc csv.o print.o commands.o unicode.o themes.o pspg.o config.o sort.o pgclient.o args.o infra.o table.o string.o export.o linebuffer.o bscommands.o readline.o inputs.o theme_loader.o st_menu.o st_menu_styles.o menu.o -o pspg -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,-z,now -lm -lreadline -lpanelw -lncursesw -ltinfo -lpq 17:11:51 themes.o: In function ncurses_theme_attr': 17:11:51 ./src/themes.c:353: undefined reference toinit_extended_pair' 17:11:51 st_menu_styles.o: In function set_rgb_color_pair': 17:11:51 ./src/st_menu_styles.c:118: undefined reference toinit_extended_pair' 17:11:51 st_menu_styles.o: In function set_color_pair': 17:11:51 ./src/st_menu_styles.c:153: undefined reference toinit_extended_pair' 17:11:51 collect2: error: ld returned 1 exit status

(We are 5 months from the EOL date of bionic, so it might not be worth the trouble to avoid these functions.)

I'll try to use a more precious #ifdef, but this code I should use because it fixes issues with true colors on the "konsole" terminal.

— Reply to this email directly, view it on GitHub https://github.com/okbob/pspg/issues/212#issuecomment-1336454518, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEFO47NXMCSTFLJNHZKVK3WLS7PBANCNFSM6AAAAAASH2MUBA . You are receiving this because you commented.Message ID: @.***>

okbob commented 1 year ago

please, can you check 5.6.2?

df7cb commented 1 year ago

5.6.2 still has the same problem: undefined reference toinit_extended_pair'`

https://pgdgbuild.dus.dg-i.net/job/pspg-binaries/83/architecture=amd64,distribution=bionic/console

okbob commented 1 year ago

ne 4. 12. 2022 v 20:20 odesílatel Christoph Berg @.***> napsal:

5.6.2 still has the same problem: undefined reference to init_extended_pair'`

https://pgdgbuild.dus.dg-i.net/job/pspg-binaries/83/architecture=amd64,distribution=bionic/console

please, can you check 5.6.3?

pspg for Ubuntu Bionic is compiled against ncurses 6.1 but with ncurses 5 ABI, which is different. I hope so I found correct #ifdef

— Reply to this email directly, view it on GitHub https://github.com/okbob/pspg/issues/212#issuecomment-1336496183, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEFO47RC6EA73AWNCY6L63WLTVIXANCNFSM6AAAAAASH2MUBA . You are receiving this because you commented.Message ID: @.***>

df7cb commented 1 year ago
21:33:31 gcc  -c  src/args.c -o args.o -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -DCOMPILE_MENU   -D_GNU_SOURCE -D_DEFAULT_SOURCE -I/usr/include/ncursesw -DPACKAGE_NAME=\"pspg\" -DPACKAGE_TARNAME=\"pspg\" -DPACKAGE_VERSION=\"0\" -DPACKAGE_STRING=\"pspg\ 0\" -DPACKAGE_BUGREPORT=\"pavel.stehule@gmail.com\" -DPACKAGE_URL=\"\" -DGWINSZ_IN_SYS_IOCTL=1 -DHAVE_NCURSESW=1 -DHAVE_CURSES=1 -DHAVE_CURSES_ENHANCED=1 -DHAVE_CURSES_COLOR=1 -DHAVE_CURSES_OBSOLETE=1 -DHAVE_NCURSESW_CURSES_H=1 -DHAVE_CURSES_ENHANCED=1 -DHAVE_CURSES_COLOR=1 -DHAVE_CURSES_OBSOLETE=1 -DHAVE_NCURSES_H=1 -DHAVE_PANEL=1 -DHAVE_NCURSESW_PANEL_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBREADLINE=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE_HISTORY=1 -DHAVE_READLINE_HISTORY_H=1 -DHAVE_POSTGRESQL=1 -DHAVE_LIBM=1 -DHAVE_SYS_INOTIFY_H=1 -DHAVE_INOTIFY=1 -DHAVE_SYS_UTSNAME_H=1 -Wall -MD
21:33:31 src/args.c: In function ‘readargs’:
21:33:31 src/args.c:813:5: error: expected ‘;’ before ‘return’
21:33:31      return false;
21:33:31      ^~~~~~
21:33:31 Makefile:33: recipe for target 'args.o' failed
okbob commented 1 year ago

ne 4. 12. 2022 v 21:34 odesílatel Christoph Berg @.***> napsal:

21:33:31 gcc -c src/args.c -o args.o -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<>=. -fstack-protector-strong -Wformat -Werror=format-security -DCOMPILE_MENU -D_GNU_SOURCE -D_DEFAULT_SOURCE -I/usr/include/ncursesw -DPACKAGE_NAME=\"pspg\" -DPACKAGE_TARNAME=\"pspg\" -DPACKAGE_VERSION=\"0\" -DPACKAGE_STRING=\"pspg\ 0\" @.***\" -DPACKAGE_URL=\"\" -DGWINSZ_IN_SYS_IOCTL=1 -DHAVE_NCURSESW=1 -DHAVE_CURSES=1 -DHAVE_CURSES_ENHANCED=1 -DHAVE_CURSES_COLOR=1 -DHAVE_CURSES_OBSOLETE=1 -DHAVE_NCURSESW_CURSES_H=1 -DHAVE_CURSES_ENHANCED=1 -DHAVE_CURSES_COLOR=1 -DHAVE_CURSES_OBSOLETE=1 -DHAVE_NCURSES_H=1 -DHAVE_PANEL=1 -DHAVE_NCURSESW_PANEL_H=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIBREADLINE=1 -DHAVE_READLINE_READLINE_H=1 -DHAVE_READLINE_HISTORY=1 -DHAVE_READLINE_HISTORY_H=1 -DHAVE_POSTGRESQL=1 -DHAVE_LIBM=1 -DHAVE_SYS_INOTIFY_H=1 -DHAVE_INOTIFY=1 -DHAVE_SYS_UTSNAME_H=1 -Wall -MD

21:33:31 src/args.c: In function ‘readargs’:

21:33:31 src/args.c:813:5: error: expected ‘;’ before ‘return’

21:33:31 return false;

21:33:31 ^~

21:33:31 Makefile:33: recipe for target 'args.o' failed

:-(

please can you check 5.6.4?

— Reply to this email directly, view it on GitHub https://github.com/okbob/pspg/issues/212#issuecomment-1336511164, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEFO45CG3NNPL262UARUFTWLT55XANCNFSM6AAAAAASH2MUBA . You are receiving this because you commented.Message ID: @.***>

df7cb commented 1 year ago

That looks good, thanks for the patience!

okbob commented 1 year ago

ne 4. 12. 2022 v 22:05 odesílatel Christoph Berg @.***> napsal:

That looks good, thanks for the patience!

super

thank you for check

— Reply to this email directly, view it on GitHub https://github.com/okbob/pspg/issues/212#issuecomment-1336516968, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAEFO45AWQMA7M655P7CWSDWLUBQ5ANCNFSM6AAAAAASH2MUBA . You are receiving this because you commented.Message ID: @.***>