TablePlus / TablePlus-Linux

TablePlus Linux issue tracker
https://tableplus.com
291 stars 30 forks source link

Segmentation fault with glib2 2.70 #130

Closed wooque closed 2 years ago

wooque commented 2 years ago

Please answer the questions below, it helps us to track the issue.

  1. Database version (Ex: PostgreSQL 10.0): /

  2. TablePlus version (the number on the welcome or about screen, Ex: build 81): 0.1.168

  3. Linux distro (Ex: Ubuntu 18.04): Arch Linux

  4. The steps to reproduce this issue: Try to start TablePlus with glib2 2.70 installed, it throws segmentation fault. Using old libgio from glib2 2.68 works.

~ tableplus 
tableplus: /usr/lib/libldap_r-2.4.so.2: no version information available (required by tableplus)
Segmentation fault (core dumped)
~ LD_PRELOAD=./libgio-2.0.so.0.6800.4 tableplus 
tableplus: /usr/lib/libldap_r-2.4.so.2: no version information available (required by tableplus)

Noted: If the bug is related to data, please attach an example SQL data.

PHLAK commented 2 years ago

I'm seeing the same libldap error today as well (also on Arch).

$ tableplus 
tableplus: /usr/lib/libldap_r-2.4.so.2: no version information available (required by tableplus)
Segmentation fault (core dumped)

Scanning my pacman log I don't see any update to the tableplus or libldap packages in over a week so not sure what exactly caused this.

wooque commented 2 years ago

@PHLAK That ldap error appears as long as I've used TablePlus, it's not a new thing and it's harmless. Problem is update of glib2 to 2.70

PHLAK commented 2 years ago

I see, you're correct. Weird that I wasn't seeing the libgio error though. :man_shrugging:

husnaram commented 2 years ago

i got it but for current workaround:

based on here https://aur.archlinux.org/packages/tableplus/#comment-827858

gorbak25 commented 2 years ago

image Same here.

PHLAK commented 2 years ago

I just received an update today (0.1.1680.1.172) and this is still a problem. In fact it's gotten worse, the workaround @husnaram mentioned is no longer working so I'm now completely unable to use Tableplus at all. :weary:

huyphams commented 2 years ago

Hi, we're working to launch TablePlus beta next month, TablePlus will be built for all platforms. Please wait for it!

wooque commented 2 years ago

@PHLAK workaround still works, update overwrote /usr/share/applications/tableplus.desktop, so make sure to change it again. On some desktop enviroments like GNOME you have to restart DE so it picks up updated desktop entry

PHLAK commented 2 years ago

Sorry, I should have clarified. I've been manually running the following from the command line as the "workaround" and this stopped working a few days ago (before today's update).

LD_PRELOAD=${HOME}/.lib/libgio-2.0.so.0.6800.4 tableplus

When I run this I see the following.

$ LD_PRELOAD=${HOME}/.lib/libgio-2.0.so.0.6800.4 tableplus
tableplus: /usr/lib/libldap_r-2.4.so.2: no version information available (required by tableplus)
Segmentation fault (core dumped)

Is there perhaps something I'm missing?

huyphams commented 2 years ago

@PHLAK the libldap_r-2.4.so is not important as it is a part of PostgreSQL Driver (LDAP authentication) and we don't use it anyway. The workaround is about the lib libgio-2.0.so

PHLAK commented 2 years ago

The problem I"m experiencing is that most of the time tableplus does not launch even when using the workaround and there may or may not be one or more hung tableplus processes. However, it does seem to launch every time I try to use strace to identify the hang up. Here's a video of the problem.

https://user-images.githubusercontent.com/53531/135961836-b8bd805a-a988-412f-8050-9164a96f2a3a.mp4

wiktorglowacki commented 2 years ago

@wooque You can get it working by downgrading glib2 to < 2.70.0-1.

Search for cached packages in /var/cache/pacman/pkg/, in my case it was /var/cache/pacman/pkg/glib2-2.68.2-1-x86_64.pkg.tar.zst

Install the package: sudo pacman -U /var/cache/pacman/pkg/glib2-2.68.2-1-x86_64.pkg.tar.zst

Enjoy tableplus again.

Ps. I don't know if it does not break other system components or smth so use at your own risk!

PHLAK commented 2 years ago

Here's the last several lines of an strace when the app fails to load, hopefully this is helpful.

access("/.flatpak-info", F_OK)          = -1 ENOENT (No such file or directory)
futex(0x557001b3b130, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x557001b3b120, FUTEX_WAKE_PRIVATE, 1) = 1
futex(0x557001b88538, FUTEX_WAKE_PRIVATE, 1) = 1
openat(AT_FDCWD, "/usr/share/glib-2.0/schemas/gschemas.compiled", O_RDONLY) = 9
newfstatat(9, "", {st_mode=S_IFREG|0644, st_size=191788, ...}, AT_EMPTY_PATH) = 0
mmap(NULL, 191788, PROT_READ, MAP_PRIVATE, 9, 0) = 0x7fbb3814b000
close(9)                                = 0
openat(AT_FDCWD, "/usr/local/share/glib-2.0/schemas/gschemas.compiled", O_RDONLY) = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/home/chris/.local/share/glib-2.0/schemas/gschemas.compiled", O_RDONLY) = -1 ENOENT (No such file or directory)
futex(0x7fbb3d6b80a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7fbb3d6b80a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7fbb3d6b80a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7fbb3d6b80a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x7fbb3d6b80a8, FUTEX_WAKE_PRIVATE, 2147483647) = 0
futex(0x557001b637c0, FUTEX_WAIT_PRIVATE, 2, NULL

The command I ran was

$ LD_PRELOAD=${HOME}/.lib/libgio-2.0.so.0.6800.4 strace /usr/local/bin/tableplus
ProjectInfinity commented 2 years ago

@wooque You can get it working by downgrading glib2 to < 2.70.0-1.

Search for cached packages in /var/cache/pacman/pkg/, in my case it was /var/cache/pacman/pkg/glib2-2.68.2-1-x86_64.pkg.tar.zst

Install the package: sudo pacman -U /var/cache/pacman/pkg/glib2-2.68.2-1-x86_64.pkg.tar.zst

Enjoy tableplus again.

Ps. I don't know if it does not break other system components or smth so use at your own risk!

This could be highly dangerous. Do not downgrade glib2 unless you absolutely desperately need tableplus. As always make sure you have a backup!!

ndom91 commented 2 years ago

Also here to say don't just downgrade your system's verison of glibc all willy-nilly. You'll most likely bork something significantly.

Unfortunately my system doesn't have the 2.68 version available anymore at all, so even running it with the LD_PRELOAD env var set to the old version wasn't an option for me.

Any news on whether Tableplus is going to support glibc 2.70+ or maybe package it in a flatpak / appimage / snap for Linux to avoid such issues?

wiktorglowacki commented 2 years ago

@ProjectInfinity @ndom91 Well, I would never downgrade any core package on my main system. Just use VM solely for Table Plus until issue is fixed.

PHLAK commented 2 years ago

This issue has been ongoing for nearly two months now without resolution and the number of reports from people being unable to launch the app are piling up (#116, #131, #133, #134). The response (or lack there of) to this issue and the perceived commitment of the developers to addressing problems with the Linux build specifically is drastically affecting my confidence in them and their product. I know this app is currently free on Linux but I'm sure I'm not alone when I say my willingness to pay for this product (and support) when it eventually does require payment is declining fast.

That being said, Tableplus has been (up until this issue) a great product that I would like to continue to use. I also understand that software has many challenges and everyone has different priorities and sometimes some of them have to be pushed to the back burner when more important ones come along. At this point, what I'd like (if not a proper fix) is some communication detailing why this hasn't been fixed yet and a timeline of when we can expect a fix along with any other relevant information. Hopefully that's not too much to ask.

wiktorglowacki commented 2 years ago

@PHLAK While this issue is quite annoying, there are workarounds and other solutions (also free to use). Have you ever consider purchasing a license, to support the author? I actually did and guess what, my MacOS version is working as it should. While Linux is still my main, daily OS I would love to see this issue fixed. But well, maybe show some more support to the author, 69 bucks isn't a big expense.

PHLAK commented 2 years ago

While this issue is quite annoying, there are workarounds and other solutions (also free to use).

Luckily I'm an advanced enough user to be able to use the workaround (and continue to do so), however many people are not savvy enough and may be stuck unable to use the app altogether. Also, an available workaround is not a valid excuse for letting a wide spread, sever bug stay open this long.

Have you ever consider purchasing a license, to support the author?

This is exactly what I'm saying. I was ready to purchase a license the moment payment was required for the Linux version, however after this issue and the lack of attention to it, I'm now reconsidering that.

... my MacOS version is working as it should

Some of us don't use other operating systems.

ndom91 commented 2 years ago

Yeah the lack of love the linux version has received in the past 6-12 months really is worrying to me too. I wholly agree with @PHLAK's comment above, I also was more than happy to pay for TablePlus when a stable linux version was released, but it clearly seems like this platform is not a priority.

Also I dont run any other OSes either and am not going to spin up a VM of Windows or an older linux version just for a DB management tool..

PHLAK commented 2 years ago

The workaround listed here has completely stopped working for me for the last week or more.

Here's the output of an strace

``` $ LD_PRELOAD=${HOME}/.lib/libgio-2.0.so.0.6800.4 strace tableplus execve("/usr/local/bin/tableplus", ["tableplus"], 0x7ffd2960db50 /* 47 vars */) = 0 brk(NULL) = 0x555b3682b000 arch_prctl(0x3001 /* ARCH_??? */, 0x7ffda4a18950) = -1 EINVAL (Invalid argument) openat(AT_FDCWD, "/home/chris/.lib/libgio-2.0.so.0.6800.4", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 p\3\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1809456, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa7d2d6b000 mmap(NULL, 1819216, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d2bae000 mprotect(0x7fa7d2be5000, 1556480, PROT_NONE) = 0 mmap(0x7fa7d2be5000, 1032192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x37000) = 0x7fa7d2be5000 mmap(0x7fa7d2ce1000, 520192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x133000) = 0x7fa7d2ce1000 mmap(0x7fa7d2d61000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b2000) = 0x7fa7d2d61000 mmap(0x7fa7d2d69000, 4688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa7d2d69000 close(3) = 0 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=151180, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 151180, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fa7d2b89000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgtk-3.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 @\10\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=8012920, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8035824, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d23df000 mmap(0x7fa7d2463000, 3637248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x84000) = 0x7fa7d2463000 mmap(0x7fa7d27db000, 3764224, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3fc000) = 0x7fa7d27db000 mmap(0x7fa7d2b72000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x792000) = 0x7fa7d2b72000 mmap(0x7fa7d2b84000, 19952, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa7d2b84000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgdk-3.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \240\2\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=997232, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1002712, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d22ea000 mprotect(0x7fa7d2314000, 786432, PROT_NONE) = 0 mmap(0x7fa7d2314000, 491520, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2a000) = 0x7fa7d2314000 mmap(0x7fa7d238c000, 290816, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa2000) = 0x7fa7d238c000 mmap(0x7fa7d23d4000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe9000) = 0x7fa7d23d4000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libpango-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \360\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=329480, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 332504, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d2298000 mprotect(0x7fa7d22a7000, 258048, PROT_NONE) = 0 mmap(0x7fa7d22a7000, 159744, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa7d22a7000 mmap(0x7fa7d22ce000, 94208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x36000) = 0x7fa7d22ce000 mmap(0x7fa7d22e6000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4d000) = 0x7fa7d22e6000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libcairo.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1166760, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1173424, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d2179000 mmap(0x7fa7d218b000, 860160, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12000) = 0x7fa7d218b000 mmap(0x7fa7d225d000, 217088, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe4000) = 0x7fa7d225d000 mmap(0x7fa7d2292000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x118000) = 0x7fa7d2292000 mmap(0x7fa7d2297000, 1968, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa7d2297000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgdk_pixbuf-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \220\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=281088, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 284384, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d2133000 mmap(0x7fa7d213c000, 167936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7fa7d213c000 mmap(0x7fa7d2165000, 69632, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x32000) = 0x7fa7d2165000 mmap(0x7fa7d2176000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x42000) = 0x7fa7d2176000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgobject-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \340\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=362408, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa7d2131000 mmap(NULL, 367560, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d20d7000 mprotect(0x7fa7d20e5000, 294912, PROT_NONE) = 0 mmap(0x7fa7d20e5000, 192512, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7fa7d20e5000 mmap(0x7fa7d2114000, 98304, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3d000) = 0x7fa7d2114000 mmap(0x7fa7d212d000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x55000) = 0x7fa7d212d000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\320\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1260984, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1266392, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1fa1000 mprotect(0x7fa7d1fbe000, 1138688, PROT_NONE) = 0 mmap(0x7fa7d1fbe000, 577536, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x7fa7d1fbe000 mmap(0x7fa7d204b000, 557056, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xaa000) = 0x7fa7d204b000 mmap(0x7fa7d20d4000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x132000) = 0x7fa7d20d4000 mmap(0x7fa7d20d6000, 728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa7d20d6000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgee-0.8.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \360\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=857872, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 863016, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1ece000 mprotect(0x7fa7d1edd000, 774144, PROT_NONE) = 0 mmap(0x7fa7d1edd000, 528384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa7d1edd000 mmap(0x7fa7d1f5e000, 241664, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x90000) = 0x7fa7d1f5e000 mmap(0x7fa7d1f9a000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xcb000) = 0x7fa7d1f9a000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgtksourceview-3.0.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \320\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=681840, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 685984, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1e26000 mmap(0x7fa7d1e43000, 380928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x7fa7d1e43000 mmap(0x7fa7d1ea0000, 167936, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7a000) = 0x7fa7d1ea0000 mmap(0x7fa7d1ec9000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa2000) = 0x7fa7d1ec9000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libsecret-1.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 @\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=399120, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 402232, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1dc3000 mprotect(0x7fa7d1dd7000, 303104, PROT_NONE) = 0 mmap(0x7fa7d1dd7000, 204800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7fa7d1dd7000 mmap(0x7fa7d1e09000, 94208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x46000) = 0x7fa7d1e09000 mmap(0x7fa7d1e21000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5d000) = 0x7fa7d1e21000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libjson-glib-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \220\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=169816, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 172472, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1d98000 mprotect(0x7fa7d1da1000, 131072, PROT_NONE) = 0 mmap(0x7fa7d1da1000, 86016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7fa7d1da1000 mmap(0x7fa7d1db6000, 40960, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e000) = 0x7fa7d1db6000 mmap(0x7fa7d1dc1000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x28000) = 0x7fa7d1dc1000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\2207\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=39408, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa7d1d96000 mmap(NULL, 43520, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1d8b000 mmap(0x7fa7d1d8e000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7fa7d1d8e000 mmap(0x7fa7d1d92000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7fa7d1d92000 mmap(0x7fa7d1d94000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7fa7d1d94000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\"\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=22704, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 24720, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1d84000 mmap(0x7fa7d1d86000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7fa7d1d86000 mmap(0x7fa7d1d88000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7fa7d1d88000 mmap(0x7fa7d1d89000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7fa7d1d89000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\363\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1323472, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1323032, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1c40000 mprotect(0x7fa7d1c4f000, 1257472, PROT_NONE) = 0 mmap(0x7fa7d1c4f000, 630784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7fa7d1c4f000 mmap(0x7fa7d1ce9000, 622592, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa9000) = 0x7fa7d1ce9000 mmap(0x7fa7d1d82000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x141000) = 0x7fa7d1d82000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\200\0\0\0\0\0\0"..., 832) = 832 pread64(3, "\4\0\0\0@\0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0"..., 80, 792) = 80 pread64(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0\7\310\371[O2Q\320\205P!z\330\241\363\20"..., 68, 872) = 68 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=154040, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 131472, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1c1f000 mprotect(0x7fa7d1c26000, 81920, PROT_NONE) = 0 mmap(0x7fa7d1c26000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7fa7d1c26000 mmap(0x7fa7d1c35000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7fa7d1c35000 mmap(0x7fa7d1c3a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7fa7d1c3a000 mmap(0x7fa7d1c3c000, 12688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7fa7d1c3c000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgssapi_krb5.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \300\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=344176, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 346976, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7fa7d1bca000 mprotect(0x7fa7d1bd6000, 286720, PROT_NONE) = 0 mmap(0x7fa7d1bd6000, 229376, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7fa7d1bd6000 mmap(0x7fa7d1c0e000, 53248, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x44000) = 0x7fa7d1c0e000 mmap(0x7fa7d1c1c000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x51000) = 0x7fa7d1c1c000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v4/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v4", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/avx512_1/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell/avx512_1/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/avx512_1/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell/avx512_1", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/avx512_1/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/avx512_1/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/avx512_1/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/avx512_1", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/avx512_1/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell/avx512_1/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/avx512_1/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell/avx512_1", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/avx512_1/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/avx512_1/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/avx512_1/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/avx512_1", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/x86_64", 0x7ffda4a17970, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib", {st_mode=S_IFDIR|0755, st_size=212992, ...}, 0) = 0 writev(2, [{iov_base="tableplus", iov_len=9}, {iov_base=": ", iov_len=2}, {iov_base="error while loading shared libra"..., iov_len=36}, {iov_base=": ", iov_len=2}, {iov_base="libldap_r-2.4.so.2", iov_len=18}, {iov_base=": ", iov_len=2}, {iov_base="cannot open shared object file", iov_len=30}, {iov_base=": ", iov_len=2}, {iov_base="No such file or directory", iov_len=25}, {iov_base="\n", iov_len=1}], 10tableplus: error while loading shared libraries: libldap_r-2.4.so.2: cannot open shared object file: No such file or directory ) = 127 exit_group(127) = ? +++ exited with 127 +++ ```

wooque commented 2 years ago

It's because of libldap update, you now have to get previous libldap - 2.4.59 and extract libldap_r and liblber. Now desktop file should contain

Exec=bash -c "LD_PRELOAD='/opt/tableplus/libgio-2.0.so.0.6800.4 /opt/tableplus/libldap_r-2.4.so.2.11.7 /opt/tableplus/liblber-2.4.so.2.11.7' /usr/local/bin/tableplus"  

It's getting worse and worse and there are no action from TablePlus side, so I think they gave up on Linux version

huyphams commented 2 years ago

Please try this https://github.com/TablePlus/TablePlus-Linux/issues/131

Davincible commented 2 years ago

Still not working for me on Manjaro, 0.1.178

Stacktrace ``` execve("./src/opt/tableplus/tableplus", ["./src/opt/tableplus/tableplus"], 0x7ffc7db6d5f0 /* 103 vars */) = 0 brk(NULL) = 0x55c60d826000 arch_prctl(0x3001 /* ARCH_??? */, 0x7ffee8ed2430) = -1 EINVAL (Invalid argument) access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3 newfstatat(3, "", {st_mode=S_IFREG|0644, st_size=251836, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 251836, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f1dce9b1000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgtk-3.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 @\10\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=8012920, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1dce9af000 mmap(NULL, 8035824, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dce205000 mmap(0x7f1dce289000, 3637248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x84000) = 0x7f1dce289000 mmap(0x7f1dce601000, 3764224, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3fc000) = 0x7f1dce601000 mmap(0x7f1dce998000, 73728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x792000) = 0x7f1dce998000 mmap(0x7f1dce9aa000, 19952, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1dce9aa000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgdk-3.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \240\2\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=997232, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1002712, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dce110000 mprotect(0x7f1dce13a000, 786432, PROT_NONE) = 0 mmap(0x7f1dce13a000, 491520, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2a000) = 0x7f1dce13a000 mmap(0x7f1dce1b2000, 290816, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa2000) = 0x7f1dce1b2000 mmap(0x7f1dce1fa000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe9000) = 0x7f1dce1fa000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libpango-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=409016, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 412088, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dce0ab000 mprotect(0x7f1dce0bd000, 323584, PROT_NONE) = 0 mmap(0x7f1dce0bd000, 208896, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12000) = 0x7f1dce0bd000 mmap(0x7f1dce0f0000, 110592, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x45000) = 0x7f1dce0f0000 mmap(0x7f1dce10c000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x60000) = 0x7f1dce10c000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libcairo.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1166760, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1173424, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdf8c000 mmap(0x7f1dcdf9e000, 860160, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12000) = 0x7f1dcdf9e000 mmap(0x7f1dce070000, 217088, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe4000) = 0x7f1dce070000 mmap(0x7f1dce0a5000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x118000) = 0x7f1dce0a5000 mmap(0x7f1dce0aa000, 1968, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1dce0aa000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgdk_pixbuf-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \220\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=281088, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 284384, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdf46000 mmap(0x7f1dcdf4f000, 167936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f1dcdf4f000 mmap(0x7f1dcdf78000, 69632, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x32000) = 0x7f1dcdf78000 mmap(0x7f1dcdf89000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x42000) = 0x7f1dcdf89000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgio-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 p\3\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1821776, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1831576, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdd86000 mmap(0x7f1dcddbd000, 1040384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x37000) = 0x7f1dcddbd000 mmap(0x7f1dcdebb000, 524288, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x135000) = 0x7f1dcdebb000 mmap(0x7f1dcdf3b000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b4000) = 0x7f1dcdf3b000 mmap(0x7f1dcdf44000, 4760, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1dcdf44000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgobject-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \340\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=362408, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1dcdd84000 mmap(NULL, 367560, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdd2a000 mprotect(0x7f1dcdd38000, 294912, PROT_NONE) = 0 mmap(0x7f1dcdd38000, 192512, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xe000) = 0x7f1dcdd38000 mmap(0x7f1dcdd67000, 98304, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3d000) = 0x7f1dcdd67000 mmap(0x7f1dcdd80000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x55000) = 0x7f1dcdd80000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libglib-2.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\320\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1260984, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1266392, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdbf4000 mprotect(0x7f1dcdc11000, 1138688, PROT_NONE) = 0 mmap(0x7f1dcdc11000, 577536, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x7f1dcdc11000 mmap(0x7f1dcdc9e000, 557056, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xaa000) = 0x7f1dcdc9e000 mmap(0x7f1dcdd27000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x132000) = 0x7f1dcdd27000 mmap(0x7f1dcdd29000, 728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1dcdd29000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgee-0.8.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \360\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=857872, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 863016, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcdb21000 mprotect(0x7f1dcdb30000, 774144, PROT_NONE) = 0 mmap(0x7f1dcdb30000, 528384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7f1dcdb30000 mmap(0x7f1dcdbb1000, 241664, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x90000) = 0x7f1dcdbb1000 mmap(0x7f1dcdbed000, 28672, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xcb000) = 0x7f1dcdbed000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgtksourceview-3.0.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \320\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=681840, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 685984, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcda79000 mmap(0x7f1dcda96000, 380928, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1d000) = 0x7f1dcda96000 mmap(0x7f1dcdaf3000, 167936, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7a000) = 0x7f1dcdaf3000 mmap(0x7f1dcdb1c000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa2000) = 0x7f1dcdb1c000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libsecret-1.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 @\1\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=399120, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 402232, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcda16000 mprotect(0x7f1dcda2a000, 303104, PROT_NONE) = 0 mmap(0x7f1dcda2a000, 204800, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7f1dcda2a000 mmap(0x7f1dcda5c000, 94208, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x46000) = 0x7f1dcda5c000 mmap(0x7f1dcda74000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x5d000) = 0x7f1dcda74000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libjson-glib-1.0.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \220\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=169816, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 172472, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd9eb000 mprotect(0x7f1dcd9f4000, 131072, PROT_NONE) = 0 mmap(0x7f1dcd9f4000, 86016, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7f1dcd9f4000 mmap(0x7f1dcda09000, 40960, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1e000) = 0x7f1dcda09000 mmap(0x7f1dcda14000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x28000) = 0x7f1dcda14000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/librt.so.1", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\2207\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=39408, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f1dcd9e9000 mmap(NULL, 43520, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd9de000 mmap(0x7f1dcd9e1000, 16384, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x3000) = 0x7f1dcd9e1000 mmap(0x7f1dcd9e5000, 8192, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f1dcd9e5000 mmap(0x7f1dcd9e7000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x7f1dcd9e7000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0000\"\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=22704, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 24720, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd9d7000 mmap(0x7f1dcd9d9000, 8192, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f1dcd9d9000 mmap(0x7f1dcd9db000, 4096, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f1dcd9db000 mmap(0x7f1dcd9dc000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f1dcd9dc000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libm.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\363\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=1323472, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 1323032, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd893000 mprotect(0x7f1dcd8a2000, 1257472, PROT_NONE) = 0 mmap(0x7f1dcd8a2000, 630784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xf000) = 0x7f1dcd8a2000 mmap(0x7f1dcd93c000, 622592, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xa9000) = 0x7f1dcd93c000 mmap(0x7f1dcd9d5000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x141000) = 0x7f1dcd9d5000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\200\0\0\0\0\0\0"..., 832) = 832 pread64(3, "\4\0\0\0@\0\0\0\5\0\0\0GNU\0\2\0\0\300\4\0\0\0\3\0\0\0\0\0\0\0"..., 80, 792) = 80 pread64(3, "\4\0\0\0\24\0\0\0\3\0\0\0GNU\0\7\310\371[O2Q\320\205P!z\330\241\363\20"..., 68, 872) = 68 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=154040, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 131472, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd872000 mprotect(0x7f1dcd879000, 81920, PROT_NONE) = 0 mmap(0x7f1dcd879000, 61440, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f1dcd879000 mmap(0x7f1dcd888000, 16384, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7f1dcd888000 mmap(0x7f1dcd88d000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a000) = 0x7f1dcd88d000 mmap(0x7f1dcd88f000, 12688, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f1dcd88f000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/libgssapi_krb5.so.2", O_RDONLY|O_CLOEXEC) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \300\0\0\0\0\0\0"..., 832) = 832 newfstatat(3, "", {st_mode=S_IFREG|0755, st_size=344176, ...}, AT_EMPTY_PATH) = 0 mmap(NULL, 346976, PROT_READ, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7f1dcd81d000 mprotect(0x7f1dcd829000, 286720, PROT_NONE) = 0 mmap(0x7f1dcd829000, 229376, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xc000) = 0x7f1dcd829000 mmap(0x7f1dcd861000, 53248, PROT_READ, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x44000) = 0x7f1dcd861000 mmap(0x7f1dcd86f000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x51000) = 0x7f1dcd86f000 close(3) = 0 openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v3", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/glibc-hwcaps/x86-64-v2", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell/x86_64", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/haswell/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/haswell", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls/x86_64", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/tls/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/tls", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell/x86_64", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/haswell/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/haswell", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/x86_64/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib/x86_64", 0x7ffee8ed1450, 0) = -1 ENOENT (No such file or directory) openat(AT_FDCWD, "/usr/lib/libldap_r-2.4.so.2", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory) newfstatat(AT_FDCWD, "/usr/lib", {st_mode=S_IFDIR|0755, st_size=278368, ...}, 0) = 0 writev(2, [{iov_base="./src/opt/tableplus/tableplus", iov_len=29}, {iov_base=": ", iov_len=2}, {iov_base="error while loading shared libra"..., iov_len=36}, {iov_base=": ", iov_len=2}, {iov_base="libldap_r-2.4.so.2", iov_len=18}, {iov_base=": ", iov_len=2}, {iov_base="cannot open shared object file", iov_len=30}, {iov_base=": ", iov_len=2}, {iov_base="No such file or directory", iov_len=25}, {iov_base="\n", iov_len=1}], 10./src/opt/tableplus/tableplus: error while loading shared libraries: libldap_r-2.4.so.2: cannot open shared object file: No such file or directory ) = 147 exit_group(127) = ? +++ exited with 127 +++ ```
huyphams commented 2 years ago

Which repo are you using @Davincible ?

Davincible commented 2 years ago

If you mean how I installed it, then by copying over the PKGBUILD file from the AUR, and updating the version number and SHA256 checksum, and running locally

Edit: What did surprise me, is that if I run sudo find /usr -name libldap_r-2.4.so.2, I only get /usr/var/lib/snapd/snap/gnome-3-28-1804/161/usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 back. I do have libldap installed

PKGBUILD File ``` # Maintainer: Winston Astrachan # Maintainer: Henry Pham pkgname=tableplus pkgver=0.1.178 pkgrel=1 pkgdesc='Modern, native, and friendly GUI tool for relational databases (Alpha)' arch=('x86_64') url='https://tableplus.com/' license=('custom') depends=('gtksourceview3' 'libgee' 'gnome-keyring') source=('LICENSE' "https://deb.tableplus.com/debian/pool/main/t/tableplus/tableplus_${pkgver}_amd64.deb") sha256sums=('76f924b1ebad5309ccf0dd7f3fe3d1b57ff3088b208a603900b0e240fdb5debb' '700e3b01fb87c6f9563da38bf0a8ed473f5176eb6abc6ed70d10ed1f3d05fb7f') prepare() { tar -xf "${srcdir}/data.tar.xz" } package() { cd "$srcdir" install -d "${pkgdir}/opt/tableplus/" install -Dm755 opt/tableplus/tableplus -t "$pkgdir/usr/local/bin/" install -Dm644 opt/tableplus/tableplus.desktop -t "${pkgdir}/usr/share/applications/" install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" cp -r opt/tableplus/resource "${pkgdir}/opt/tableplus/" echo "" >> "${pkgdir}/usr/share/applications/tableplus.desktop" echo "Categories=Utility;Development;" >> "${pkgdir}/usr/share/applications/tableplus.desktop" echo "Comment=Modern, native, and friendly GUI tool for relational databases (Alpha)" >> "${pkgdir}/usr/share/applications/tableplus.desktop" find "${pkgdir}/opt/tableplus/" -type d -exec chmod 755 {} \; find "${pkgdir}/opt/tableplus/" -type f -exec chmod 644 {} \; } ```
huyphams commented 2 years ago

The AUR (AUR is not an official repo from TablePlus team) file is built for Ubuntu 18 and 20, you must download the file from the repo for Ubuntu 21.

Davincible commented 2 years ago

As of now it downloads it form the root package, so assumed that would be the latest; https://deb.tableplus.com/debian/pool/main/t/tableplus/tableplus_${pkgver}_amd64.deb

After your comment I change the link to the Ubuntu21 file; https://deb.tableplus.com/debian/21/pool/main/t/tableplus/tableplus_${pkgver}_amd64.deb

Unfortunately the same issue about libldap remains. The checksum from the deb package was infact different.

Edit: Actually, I get missing libldap-2.5.so.0, this is a different lib than before. The libldap libs present on my system are:

/usr/lib/libldap.so
/usr/lib/libldap.so.2
/usr/lib/libldap.so.2.0.200
ndom91 commented 2 years ago

Yeah I'm on the AUR 0.1.178-2 now and also get the missing libldap-2.5.so.0 error.