How to compile or get mod_heartbeat for apache2? - linux

I'm using apache httpd on SUSE 12.2 and want to enable mod_heartbeat. However it does't seem to have mod_heartbeat module file in any of the module directories. When I try to enable the module I get an error that the module cannot be found.
I installed apache via zypper install apache2 which installs version 2.2.2 but doesn't include the module. I also tried to search for additional mods using zypper search apache but didn't find the heartbeat mod there either.
Finally I downloaded the sources for apache 2.4 and compiled them. I didn't get any compile errors and the files were compiled to /usr/local/apache2. The Directory /usr/local/apache2/modules contains several mods but no mod_heartbeat.
Any ideas what I'm doing wrong or how I can compile or obtain the missing module file?

The source for several modules including mod_heartbeat can be obtained at https://github.com/omnigroup/Apache/tree/master/httpd/modules/cluster

Related

GSL not installing in Windows 10 using GIT Bash

When I run the config file for installing GSL library for Windows 10 I get the following error:
error: Something went wrong bootstrapping makefile fragments for
automatic dependency tracking. If GNU make was not used, consider
re-running the configure script with MAKE="gmake" (or whatever is
necessary). You can also try re-running configure with the
'--disable-dependency-tracking' option to at least be able to build
the package (albeit without support for automatic dependency
tracking).
If I run ./config MAKE="gmake" I still get the error. I have searched in StackOverflow and on the web and still haven't found a solution.

error while loading shared libraries: libgfortran.so.3: cannot open shared object file: No such file or directory

I am running a Fortran model on a linux server (CentOS8). When I run the .exe file (./pgd.exe) compiled by make, I got the error message:
./pgd.exe: error while loading shared libraries: libgfortran.so.3: cannot open shared object file: No such file or directory
And if I type where gfortran, I got nothing. But if I type whereis libgfortran.so.3, I got
libgfortran.so: /usr/lib64/libgfortran.so.5.
Since this is a server used by many users, I cannot ask the admin to degrade the libgfortran.so.5 to version 3, how can I do to ensure the model running? I searched that there are some similar questions and potential solutions are like sudo apt-get install libgfortran3. But I don't know how to install libgfortran3 under my account since I am not the admin and couldn't use sudo. Thanks!
The application ("pgd.exe") has been compiled with an older version of gfortran where the runtime library is not compatible with the runtime library provided by centos 8. There are a number of solutions, such as
Recompile the application with the version of gfortran provided in centos8.
Copy the old libgfortran.so.3 somewhere, set LD_LIBRARY_PATH to point there so that the application finds it.
Bundle the application and whatever libraries it needs as a container.

Linux make specify lib location

I'm trying to build hostapd after removing it ( I can't use yaourt for this as my network adapters aren't working any more ). When I try to use make for this purpose, here's the output :
netlink/genl/genl.h: No such file or directory
I therefore installed libnl 3.2.25 after downloading it with another pc, but running make with hostapd still throws the same error. I think it's because of this ( appears when configuring libnl ) :
NOTE
There have been some changes starting with 3.2 regarding where and how libnl
is being installed on the system in order to allow multiple libnl versions
to be installed in parallel:
- Headers will be installed in ${prefix}/include/libnl3, therefore
you will need to add "-I/usr/include/libnl3" to CFLAGS
- The library basename was renamed to libnl-3, i.e. the SO names become
libnl-3.so., libnl-route-3.so, etc.
- libtool versioning was assumed, to ease detection of compatible library
versions.
The problem being : I don't know how to tell make where libnl is, and as there's no configure file, where should I add the "-I/usr/include/libnl3" ? Sorry if that's a dumb question but I read make's doc without finding an answer, and I've never ran into this issue before.

Error while install gcc49 in Ubuntu by using linuxbrew

I want to install the latest gcc49 in a Ubuntu Linux, and I am familiar with Homebrew in Mac, so I would like to use the Linux version of it, i.e., Linuxbrew. So I installed Linuxbrew and typed
$ brew install gcc49
The dependencies gmp4, mpfr2 and etc. will be installed first. I have added a if OS.mac? condition in gmp4 so it can be installed successfully, but when installing mpfr2 (also added the condition), the make check failed with the error:
...
/tmp/mpfr2-i5YD/mpfr-2.4.2/tests/.libs/lt-tpow_all: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory
FAIL: tpow_all
=======================
148 of 148 tests failed
=======================
As you can see, the tests can not find libgmp.so.3 which is just installed. But gmp4 is keg only since it will conflict with gmp in main repository.
But the configure options are set with the correct location of gmp4:
./configure --disable-dependency-tracking --prefix=/home/dongli/.linuxbrew/Cellar/mpfr2/2.4.2 --with-gmp=/home/dongli/.linuxbrew/opt/gmp4
How to solve this problem? Thanks!
You think you are doing it wrong by insisting on a third-party scripting solution that is not native to the OS.
There are prebuilt versions of gcc et al provided by the same maintainers in this PPA on Launchpad. These are previews / testreleases of what will be in the next Ubuntu releases.
I found the problem, that is the environment has been reset after each system call in Ruby formula. So we need to set the correct LD_LIBRARY_PATH as
if OS.linux?
ENV["LD_LIBRARY_PATH"] = "#{Formula["..."].opt_prefix}/lib:...:$LD_LIBRARY_PATH"
end
so that LD_LIBRARY_PATH persists during the build processes.

Cannot run Code::Blocks: libwx_gtk2u-2.8.so.0 not found

I am trying to install Code::Blocks 10.05 from (non-SVN) sources (codeblocks-10.05-src.tar.bz2). My OS is Ubuntu 11.04. I needed to download and install wxWidgets first (I now have wxGTK-2.8.12), which seemed to work. I compiled it according to these instructions:
http://wiki.codeblocks.org/index.php?title=Installing_Code::Blocks_from_source_on_Linux
Then I configured C::B with
./configure --with-wx-config=/opt/wx/2.8/bin/wx-config
and ran
export LDFLAGS="-Wl,-R /opt/wx/2.8/lib"
make
sudo -i
make install
When trying to run C::B, I get the following error:
codeblocks: error while loading shared libraries: libwx_gtk2u-2.8.so.0: cannot open shared object file: No such file or directory
The same question was asked here: error while loading shared libraries, but the suggested solution (namely adding the wxWidgets config to the options passed to configure) didn't work for me.
The output of wx-config --prefix is /opt/wx/2.8,
The output of wx-config --libs is -L/opt/wx/2.8/lib -pthread -lwx_gtk2u-2.8,
and that of which wx-config is /opt/wx/2.8/bin/wx-config.
I looked for the library and found /opt/wx/lib/libwx_gtk2u-2.8.so.0 to be a link to libwx_gtk2u-2.8.so.0.8.0 in the same folder.
What might be wrong here?
The problem is that the program cannot find the WX widgets libraries at run time. You will need to set your LD_LIBRARY_PATH variable to include the location of wxWidgets like this:
LD_LIBRARY_PATH=/opt/wx/2.8/lib ./codeblocks
The reason why its failing is because you compiled codeblocks against wxWidgets found in /opt/ and not the one installed in /usr/; the program doesn't know to look in /opt for the wx libraries.
Probably the easiest way to get code::blocks up and running on Ubuntu is to just install it via the Synaptic Package Manager. Just type in codeblocks into 'Quick search'. Find codeblocks on the list and just right-click to mark for install. Any dependencies and missing libraries needed will automatically be handled and installed by Synaptic as necessary.
If you're interested in trying the C::B nightly builds on Ubuntu then you'll want to checkout Jens' unofficial debian-repository here.
You can visit Why do I have to define LD_LIBRARY_PATH with an export every time I run my application? for a more generic case. For a particular case like yours you can follow the below given steps
If you had installed wxGTK then you would see the file in /usr/local/lib. You would get this error when the the above path is not as part of the makefile. I received this error while starting wxFormBuilder after building from source on CentOS. There are 2 approaches.
Approach 1: Putting the path in .bashrc
gedit /home/{your-username}/.bashrc
Then after the line # User specific aliases and functions paste the following
export $LD_LIBRARY_PATH=/usr/local/lib.
This would work for fine but for the current login, but for other users like root you might have to do the same in the respective .bashrc files.
Approach 2: Creating your own conf files
cd /etc/ld.so.conf.d
gedit wxformbuilder.conf
Give the path /usr/local/lib and save the file.
ldconfig (To update the library path).

Resources