Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Compatibility issues with rocky 8.5 #4

Closed
andreacarotti331 opened this issue Jun 19, 2023 · 7 comments
Closed

Compatibility issues with rocky 8.5 #4

andreacarotti331 opened this issue Jun 19, 2023 · 7 comments

Comments

@andreacarotti331
Copy link

andreacarotti331 commented Jun 19, 2023

Dear all, I'm at University of Perugia (ITLAY),
I'm running an OS Rocky 8.5 that ships with gcc 2.28.
When running the precompiled unidock exec I have this errors.

./unidock: /lib64/libm.so.6: version `GLIBC_2.29' not found (required by ./unidock)

./unidock: /lib64/libstdc++.so.6: version `GLIBCXX_3.4.26' not found (required by ./unidock)

Could you compile it with the static option? or can you suggest me how to overcome this issue.
Thanks
Andrea

@caic99
Copy link
Member

caic99 commented Jun 19, 2023

Hi @andreacarotti331 ,
Would you try installing gcc-9 to match the glibc version? The exetutable is compiled using gcc 9.4.0, fyi.

@andreacarotti331
Copy link
Author

Hi,
it's not so simple to upgrade the gcc...usually this means the risk to break something is high.
By the way I managed to workaround by following this answer https://stackoverflow.com/a/61738375.
I downloaded two rpm (libstdc++-11.3.1-4.3.el9.x86_64.rpm and glibc-2.34-68.el9.x86_64.rpm) and extracted by rpm2cpio in a private local folder. Now the program is running.

@pkuyyj
Copy link
Contributor

pkuyyj commented Jun 20, 2023

Maybe we can compile Uni-Dock using older glibc version to solve this problem and similar problem on CentOS with old versions. @caic99

@andreacarotti331
Copy link
Author

I think it would be better if you don't prove the source code.
You have two option:

  • compile with static libraries so it will be "release independent" , but you have to check if the performances are mantained
  • compile with older glibc version and create different unidock binaries...
    My bests
    Andrea

@subercui
Copy link

Hi, got the same issue here

@pkuyyj
Copy link
Contributor

pkuyyj commented Jul 2, 2023

We have compiled Uni-Dock with glibc 2.17.
unidock_glibc2_17.zip

@pkuyyj pkuyyj closed this as completed Jul 2, 2023
@subercui
Copy link

subercui commented Jul 2, 2023

Hi, this 2.17 build brings up more dependencies I don't have. I checked this with ldd unidock_glibc2_17:

$ ldd unidock_glibc2_17
linux-vdso.so.1 (0x00007fffc491f000)
libboost_system.so.1.77.0 => not found
libboost_thread.so.1.77.0 => not found
libboost_serialization.so.1.77.0 => not found
libboost_filesystem.so.1.77.0 => not found
libboost_program_options.so.1.77.0 => not found
libboost_chrono.so.1.77.0 => not found
libboost_atomic.so.1.77.0 => not found
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f317c2bb000)
libgomp.so.1 => /usr/lib/x86_64-linux-gnu/libgomp.so.1 (0x00007f317c078000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f317be70000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f317bc6c000)
libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f317b85f000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f317b4c1000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f317b2a9000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f317aeb8000)
/lib64/ld-linux-x86-64.so.2 (0x00007f317c4da000)

Please have a look at the missing dependencies starting with libboost*. I have 1.65 on the system but not 1.77. Are those dependencies really needed? I don't see them in the original binary build

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants