Page 1 of 2
[FIXED] S3D version 3.1 error in Fedora Core
Posted: Sun Jun 12, 2016 5:01 pm
by TimEdwards
I have Simplify3D running in Fedora Core 21, and up until version 3.1 had no problems with the installation. However, when running version 3.1, I get the error:
error while loading shared libraries: libcrypto.so.1.0.0: cannot open shared object file: No such file or directory
Simplify3D appears to be using an outdated libcrypto. My current version is libcrypto.so.1.0.1k, a.k.a. libcrypto.so.10.
I found a random other installed package with its own version of libcrypto-1.0.0, but trying to link to that failed with a different error message:
/lib64/libcrypto.so.1.0.0: no version information available (required by Simplify3D)
Just trying to hack it in by making a symbolic link from libcrypto.so.1.0.0 to libcrypto.so.10 ends up with yet another different error message:
/lib64/libcrypto.so.1.0.0: version `OPENSSL_1.0.0' not found (required by Simplify3D)
I have several other possible leads from StackOverflow, but if anybody else has encountered and/or solved this problem, please let me know.
Re: S3D version 3.1 error in Fedora Core
Posted: Sun Jun 12, 2016 5:04 pm
by TimEdwards
"Version 1.0.1 of openssl was released in March 2012"
Why is Simplify3D version 3.1 using a version of openSSL that is four years out of date?
(Edit---Subsequent poking about on the web suggests that Fedora Core has done something different with its numbering of openSSL libraries which means that Simplify3D is not compiled to an ancient version of openSSL, but that what works on other systems breaks on Fedora Core. It is possible that the only solution is either to compile a separate executable for Fedora Core, or to compile to a static target of libcrypto.)
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Jun 13, 2016 9:59 am
by CompoundCarl
Probably because that version is still the only one installed on many of the standard linux distros and most of the popular LTS releases (FYI - that's the only version installed on both of my different linux environments).
Did you try emailing their support people? Maybe they will compile something specifically for fedora or give you different install files to make it work.
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Jun 13, 2016 10:15 am
by BaudR8
I noticed my Simplify3D release did not come with any libcrypto or libssl, you could try downloading the source package, compiling and installing it, that's what worked for me. libcrypto should be built with the libssl binaries.
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Jun 13, 2016 3:51 pm
by TimEdwards
BaudR8 wrote:I noticed my Simplify3D release did not come with any libcrypto or libssl, you could try downloading the source package, compiling and installing it, that's what worked for me. libcrypto should be built with the libssl binaries.
But what do you mean by that, exactly? OpenSSL on SourceForge doesn't even post the 1.0.0 version any more. So it seems like I will have to compile libcrypto 1.0.1 from source but somehow make it report to the linker that it's actually version 1.0.0 so that I don't get this "version OPENSSL_1.0.0 not found" error.
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Jun 13, 2016 3:52 pm
by TimEdwards
CompoundCarl wrote:Did you try emailing their support people? Maybe they will compile something specifically for fedora or give you different install files to make it work.
I did contact S3D support, but as usual, responses come much faster on the forum.
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Jun 13, 2016 8:12 pm
by TimEdwards
BaudR8 wrote:I noticed my Simplify3D release did not come with any libcrypto or libssl, you could try downloading the source package, compiling and installing it, that's what worked for me. libcrypto should be built with the libssl binaries.
Okay, I understand it all now. In the standard installation, OpenSSL version 1.0.1 creates a shared object library libcrypto.so.1.0.0, apparently the intent of the OpenSSL developers. The Fedora Core developers apparently thought that wasn't good enough for them, and decided instead to shoot themselves in the collective foot by insisting that the shared object library must be 1.0.1, thereby making it incompatible with all other Linux versions.
Anyway, I compiled libcrypto from source as you suggested, and Simplify3D starts up with no problem. It does generate some warning message about libcrypto, but since that does not appear to prevent the program from running, I can live with it. Thanks for the tip.
Re: S3D version 3.1 error in Fedora Core
Posted: Tue Jun 14, 2016 10:22 am
by BaudR8
TimEdwards wrote:BaudR8 wrote:I noticed my Simplify3D release did not come with any libcrypto or libssl, you could try downloading the source package, compiling and installing it, that's what worked for me. libcrypto should be built with the libssl binaries.
Okay, I understand it all now. In the standard installation, OpenSSL version 1.0.1 creates a shared object library libcrypto.so.1.0.0, apparently the intent of the OpenSSL developers. The Fedora Core developers apparently thought that wasn't good enough for them, and decided instead to shoot themselves in the collective foot by insisting that the shared object library must be 1.0.1, thereby making it incompatible with all other Linux versions.
Anyway, I compiled libcrypto from source as you suggested, and Simplify3D starts up with no problem. It does generate some warning message about libcrypto, but since that does not appear to prevent the program from running, I can live with it. Thanks for the tip.
when you installed libcrypto it might not have overwritten the ones that came with your Fedora installation, what warning/error are you getting? S3D probably uses SSL HTTPS for authentication/licensing purposes, so if possible you'll want to make sure your OpenSSL binaries/dependencies are in order so that you dont run into any issues
Re: S3D version 3.1 error in Fedora Core
Posted: Mon Sep 05, 2016 7:35 pm
by croadfeldt
In my opinion Simplify3d should have included the required libcrypto.so.1.0.0 library or compiled it staticlty. This feels like a packaging issue more than anything.
Fedora is doing the correct thing when they updated the version to 1.0.2. That was the current version released roughly when they locked down the version for 24. That version will remain the same for the lifetime of 24. When 25 get's it's package list lockdown, it will most likely be 1.1 or something higher than 1.0.2. Same thing goes for the other distributions, they lock down library versions and they remain the same for the lifetime of the distribution, but they will back port fixes while the version remains the same. Sometimes they even back port functionality.
If you download the latest and greatest OpenSSL 1.1, compile and drop the shared library into the Simplify3d directory, it will still complain. The default behavior for libraries are to included their current version in themselves so apps can properly be linked at runtime with the correct version. It is not standard behavior to change the internal version to remain 1.0.0, that would break the ability for a program to enforce a specific version threshold and correctly use a library because it needs to know what the library can do from a functionality perspective. eg; version 1.0 can do X, version 1.1 can do X, Y and doesn't have security whole Z in it.
Hope this clears things up a bit.
That said, I've compiled the older 1.0.0, release k. That is what Simplify3d is expecting. Installed it, and regardless of how it's started either directly with ./Simplify3d or via the launch script, I get the SSL warning, then a stop. Resuming the process with fg or bg results with the same behavior. App appears to hang, but not zombify. If anyone has any experience with this, let me know. Regardless I am going to have a chat with the support folks as their library thing is a pain and unnecessary and the hang after starting it is obviously not desired behavior.
Re: S3D version 3.1 error in Fedora Core
Posted: Wed Oct 05, 2016 7:38 am
by bnorman
Support has a version of libcrypto.so.1.0.0 with the correct symbol available for download if you contact them.
I had tried to build and use openssl-1.0.0t, but it does not define any version symbol, and Simplify3D explicitly needs OPENSSL_1_0_0 defined.
The version from Support works fine for me; I do need to run via LaunchScript.sh.