Reputation: 5387
I'm getting this error when I run make install
after compiling openssl-1.1.1g
.
link /my/dir/lib/libcrypto.so -> /my/dir/lib/libcrypto.so.1.1
install libcrypto.so -> /my/dir/lib/libcrypto.so
install libcrypto.so.1.1 -> /my/dir/lib/libcrypto.so
ar: /my/dir/lib/libcrypto.so: file format not recognized
ar: /my/dir/lib/libcrypto.so.new: file format not recognized
make: *** [Makefile:370: install_dev] Error 1
The commands I'm using are:
tar xvf openssl-1.1.1g.tar.gz
cd openssl-1.1.1g
./Configure --prefix=/my/dir shared linux-x86_64
make
make install
There don't seem to be any errors from configuration or make
.
I've also tried ./config --prefix=/my/dir shared
instead of ./Configure
with the same result.
I'm on a RedHat-based Scientific Linux.
I found a similar discussion here, but it didn't give me insight into fixing the problem.
I'm trying to install it in my personal location because I'm not an administrator of the machine in question.
Upvotes: 0
Views: 2048
Reputation: 2950
I believe that the thread you reference has the correct answer: upgrade Text::Template
to at least 1.46 (using a cpan
variant). One comment says this is required because append_text_to_output
is used in the build scripts. Presumably upgrading Perl itself solved your problem because it brought a new version of the module.
Upvotes: 0
Reputation: 5387
The problem was that the machine had an old version of perl, which openssl config scripts use to create the Makefile. v5.10.1 appear to be not enough. I installed v5.30.2 and everything worked.
Upvotes: 2