Undefined symbol: apr_crypto_init during Apache restart? - apache

I attempted to update my version of SVN from 1.7 to 1.8 as per this guide:
http://snippets.khromov.se/subversion-1-8-centos-6/
All seemed to install fine, however now I have an issue when I try to restart Apache:
/usr/sbin/httpd: symbol lookup error: /usr/sbin/httpd: undefined symbol: apr_crypto_init
Does anyone know how to solve this?
Which packages need to be updated?

I had same issue after installing some perl modules.
I did the following to resolve it:
yum remove vulture-common-3.2-185.1.x86_64
cd /usr/lib
ln -sf libaprutil-1.so.0.2.9 libaprutil-1.so.0
ln -sf libapr-1.so.0.2.9 libapr-1.so.0

apr_crypto_init is new with APR-Util 1.4.x. CentOS 6 should already have APR-Util 1.4.x. So either you're not using CentOS 6 which those instructions are made for or you're not using the apr-util/httpd version that comes with CentOS 6.
If you're not using CentOS 6 then I suggest you go get a version built for your distribution from WANdisco's download site (the script that the site you linked to actually is from WANdisco).
If you're using your own httpd version you'll either have to switch or you'll have to build your own copy of Subversion.

I have had similar experiences with other applications using this library and Centos 6.x. I have tracked most of the problems down to using the 'minimum install' version of the OS. From what I have been able to determine, the minimum or light install versions of Centos have a tendency to have older versions of the binaries. For example, my version of APR-Utils are 1.3x even though I am using version 6.6.
This is supposedly done for better stability and backward compatibility from what I can find but it causes some headaches if you aren't aware. You may need to use a more 'complete' version of the OS in order for this library to be the latest version, provided you are starting from scratch.

Related

How to install specific version of Cap'n Proto (v0.8.0)?

sudo apt install capnproto
This installs v0.7.0 in my ubuntu 20.04. However, i require v0.8.0 to be installed.
Also, i need v0.6.1 to be installed additionally for backward compatibility.
Any solution for these two cases ?
You will probably need to install from source rather than use a distro package. Unfortunately, it sounds like the Ubuntu distro package hasn't been updated in a while.
Instructions for building and installing from source can be found here: https://capnproto.org/install.html
Old versions are available by changing the version number in the download URL to whichever version you need.
Note that all versions of Cap'n Proto are backwards-compatible, so there should be no need to install older versions, unless you need to run a specific complied binary that was linked against a specific old version.

Redhawk IDE will not display Components

When I launch the REDHAWK IDE via Eclipse, I cannot see the installed components (SigGen, fastFilter, etc). I can see the components just fine if I use the command line to create a project. I'm convinced it has to be a path or variable issues, but I just don't know what to reconfigure.
I'm using REDHAWK Version 2.1.0 and on CentOS7
OSSIEHOME is set to the /usr/local/redhawk/core
SDRROOT is set to /var/redhawk/sdr
Any suggestions?
I found a solution by reinstalling and including every Redhawk package that I could find using "yum list redhawk*"
I have the same problem and it turns out I was using a Java version higher than 8 which is not supported by RedHawk. Make sure you use Java 8 to launch the IDE otherwise it does not work. Submitted a DR but because JDK8 still supported they do not feel the need to fix it.
I followed the official installation instructions for RedHawk 2.3.0 on Centos 7.9 and had this same issue, I fixed it by opening a terminal in the Redhawk installation directory and running
sudo yum install redhawk-basic-components-2.3.0-5.el7.x86_64.rpm
After which the components appeared in the IDE without a restart

Pharo 2.0 not running on CentOS 6.6

I am trying to run my pharo2.0 application on CentoOS which was previously been installed in a mac. The original version is pharo2.0 so I need to run the same image CentoOS too, but I get an error which says this below :
/lib/libc.so.6: version `GLIBC_2.15' not found (required by xxxxx)
Should I be trying to upgrade the CentoOS and see if pharo2.0 works or port my whole application to a later version of pharo?
There is now a VM build especially for systems with an older libc version. In fact there is a build for Centos specifically (which has a slight variation in linkages from Debian), the latest version of which is permalinked here. See http://pharo.org/download#custom for more info.

Installing mod_mono on Mac OSX 10.9 "Mavericks"

I'm trying to install mod_mono on mavericks, however, I'm getting an error. I have the most up-to-date mono version with Mavericks support. (v 3.2.3).
When I ./configure --prefix=/usr in mod_mono version 2.10 I get this error:
checking Apache version... configure: error: Apache 1.3 is no longer supported. mod_mono now requires at least Apache 2.0
But when i check my version of apache it says
Server version: Apache/2.2.24 (Unix)
Server built: Aug 24 2013 21:10:43
EDIT: Upgrading your mono version to the latest (3.2.4) appears to work the best. Ensure you have a clean download of mod_mono-2.10.
After installing Mavericks, you need to reinstall the XCode Command Line Tools. This will bring back the /usr/include/apache2 directory. You do this by updating your XCode and then run xcode-select --install.
I had the same error. I had mono running on my server. When I upgraded to Mavericks and Server 3 mono stopped working. During the upgrade process the "mod_mono.so" file was removed. This is what I did to research and resolve my issue which I believe encompasses yours. Hope it helps.
In the directory that you are running your "./config..." command, there is a "config.log". I looked at the config.log and found an error message stating that it could not find the file "ap_release.h" (I believe this is how the apache version is determined). I must have had this file at one time because I went through this installation process before. I went into my time machine and restored the directory (which was removed when I upgraded to Mavericks or Server 3) "/usr/include/". This folder included a directory called "apache2" which included the "ap_release.h" file and I assume it's dependencies.
All is well I am up and running.

How to install recent mono and monodevelop?

I tried to install mono and monodevelop on centOS 6.3.
After many hours I was able to install mono but failed with monodevelop.
I'm really astonished how difficult and time consuming it is, to get a recent mono/monodevelop version on linux installed.
Is there nobody willing to write and maintain an install/compile tutorial to get the most recent mono/monodevelop/monodata/ASP.NET MVC/... version on the major linux distributions (Centos, Ubuntu, Suse, Debian) installed?
I think many people developing on Windows (with limited linux knowledge) would like to start using mono, if the boarding hurdle would be somehow lower.
It may be the most important to make Mono more used and more visible.
Please, write a tested tutorial (script) for compiling mono/monodevelop.
Thank you!
I have created a project on Open Build Service, which produces builds of the latest MonoDevelop 4.0.10 for Debian, Ubuntu, CentOS, and Fedora.
see https://build.opensuse.org/project/show/home:tpokorra:mono
For installation instructions with apt-get or yum, see:
http://software.opensuse.org/download/package?project=home:tpokorra:mono&package=monodevelop-opt
I hope this will increase the usage of MonoDevelop on Linux Desktop environments.
Monodevelop 4.
If you use any *buntu. Check this.
"You can open up the terminal and install it via the following:
1. sudo add-apt-repository ppa:keks9n/monodevelop-latest
2. sudo apt-get update
3. sudo apt-get install monodevelop-latest"
http://mono-d.alexanderbothe.com/?p=101
Xamarin should be doing a better job at publishing the linux packages in a one-click manner. I don't care what linux distro (SuSE, RHEL, CentOS, Ubuntu etc) - just pick any one as the supported one and publish for it. It seemed that it used to be SuSE but even that has old packages as seen within Zypper/YaST.
Update Mono framework
Having said that, to update the Mono framework itself, without letting go of the package managers try this. This will work as long as the project dutifully publishes the RPMs. You don't want to build from source since it's a more fickle process and the setup distracts from your real objective (i.e. develop).
Obviously, please replace the URL below to what will be latest by the time you're reading this.
mkdir mono-rpms
cd mono-rpms
wget --reject "index.html*" -nd -r -e robots=off --no-parent http://download.mono-project.com/archive/3.2.3/linux/x64/
sudo zypper install *rpm
Update MonoDevelop (the IDE)
Timotheus Pokorra's answer indicates he's filling in some of the usability void left by Xamarin (Thanks Timotheus!!). You can install MonoDevelop via
http://software.opensuse.org/download/package?project=home:tpokorra:mono&package=monodevelop-opt
Note that on SuSE I get the error
Problem: nothing provides liberation-mono-fonts needed by mono-libgdiplus-opt-3.0.12-7.1.x86_64
Solution 1: do not install monodevelop-opt-4.0.12-5.2.x86_64
Solution 2: break mono-libgdiplus-opt-3.0.12-7.1.x86_64 by ignoring some of its dependencies
I (very reluctantly) selected to break the dependency. Note that I already had liberation-fonts (via sudo zypper install liberation-fonts). I don't know if its the same/different as liberation-mono-fonts. Anyway, hope Timotheus fixes it when he has a moment.
I'm not sure if you've already seen this, but this may help:
http://www.mono-project.com/Parallel_Mono_Environments
The most common problem that new developers have when coming to Linux from systems like Windows is not properly setting up their environment variables and so when they do the standard ./configure && make && make install routine, when it involves a number of source packages (like Mono does), any package that depends on the core package won't pick up the correct location for that base package.
Your question really doesn't explain what parts you found confusing or difficult so it's hard to address those issues.
For people unfamiliar with setting up Linux systems, it may be easier if you just go with a system like Ubuntu which has fairly recent pre-built packages (although not the latest - I don't think any Linux system keeps up with Mono releases) rather than wrestling with the learning curve of how to build everything yourself.
It is confirmed that in the near future Xamarin will support Linux and provide binaries (mono and mainline applications) for Debian and Centos derivatives, and their are already packages for Debian and Centos derivatives for technical preview. So cheers and no more pain of compiling and even parallel mono installaions.It can not get more easy than this. Check here