Thanks for the reply, Jeff.
My source install is 100% scripted (bash), from using wget to download 
tarballs, extracting the tarballs with tar, copying apr and apr-utils under 
../srclib, and so on. However, the first very  thing it does is delete all 
previous files that were installed. Would I still need to do "make distclean". 
Here's my opening sequence (without decision logic or checking the hash 
signature). 

#!/usr/bin/bash
#
#Apache 2.4.12 Installer
#

echo -e "Changing to the downloads directory!\n\n"
cd ../downloads/
echo -e "Removing all previous tarballs, extracted sources, and main install 
directory.!\n\n"
rm -rfv httpd* apr* /usr/local/apache2

echo -e "Downloading APR (Apache Portable Runtime) 1.5.2\n\n"
wget http://ftp.wayne.edu/apache//apr/apr-1.5.2.tar.bz2

echo -e "Downloading APR-UTIL (Apache Portable Runtime Utilities) 1.5.4\n\n"
wget http://ftp.wayne.edu/apache//apr/apr-util-1.5.4.tar.bz2

echo -e "Downloading Apache HTTP Server 2.4.12\n\n"
wget http://ftp.wayne.edu/apache//httpd/httpd-2.4.12.tar.bz2

echo -e "Extracting APR 1.5.2\n\n"
tar -xjvf apr-1.5.2.tar.bz2

echo -e "Extracting APR-UTILS 1.5.4\n\n"
tar -xjvf apr-util-1.5.4.tar.bz2

echo -e "Extracting httpd-2.4.12\n\n"
tar -xjvf httpd-2.4.12.tar.bz2
echo -e "Compiling Apache HTTP Server 2.4.12\n\n"mkdir -v srclib/apr/ 
srclib/apr-util/
mv -v ../apr-1.5.2/* srclib/apr/
mv -v ../apr-util-1.5.4/* srclib/apr-util/

###Now, I'll try your configure combo./configure --enable-mods-shared=few 
--prefix=/tmp/test-config > cfgout 2>&1 && make >makeout 2>&1 && make install > 
installout 2>&1 && ./httpd -l && ./httpd -M
[running as I type]..
[Nothing yet]..
The output produced was the buttom half of a listing from httpd -M. Looks 
good,because there are lines like
so_module (static)
unixd_module (shared)status_module(shared)

...which is great! The only significant difference between your configure 
sequence and mine is the use of the --prefix=  option. I tried ./configure 
--enable-mods-shared=all (etc...), but that did not work. 
Could it be the --prefix option is that important?
Let's check for DSOs 

ls -l /tmp/test-config//modules/*.so
Bada-bing, bada-boom. Alright, looks good.I'll do my regular configure stuff 
with --prefix=/usr/local/apache2 and follow up.
Thank you.
Anthony



     From: Jeff Trawick <traw...@gmail.com>
 To: users@httpd.apache.org 
 Sent: Saturday, June 27, 2015 4:43 PM
 Subject: Re: [users@httpd] Help. DSOs not being built from source? Apache 
2.4.12 & CentOS 7 (x86_64)
   
 

On 06/27/2015 10:53 AM, Anthony Rutledge wrote:
  
  DSOs not being built from source? Apache 2.4.12 & CentOS 7 (x86_64) 
  This is a good question for those who are experts at installing Apache 2.4.12 
from source. 
  First, no errors are being generated. My "configure, make, make install" 
sequence successfully creates a /usr/local/apache2/ directory. Second, I have 
read the manual, poured over ./configure -h, searched the web, and no where 
does there seem to be anyone experiencing the same problem as me. No matter 
what  "configure --foo-bar" sequence/combination I use, the shared modules are 
never built, or I cannot find them. I expect them to be under 
/usr/local/modules/, but all I get are *.a and *.la files. Alright, gurus, what 
am I missing? 
  Again, no matter what configure sequence/combination I try, *.so (DSO) files 
are never built, or I cannot find them.
  apachectl -l does list mod_so as being compiled in statically.  
  (P.S. Also posted on: ServerFault at 
http://serverfault.com/questions/701992/apache-2-4-12-centos-7-dso-shared-modules-not-being-built-during-compile
 ) 
  Can someone explain why no DSO's are being built, or how to build at least 
one? Very strange.
   
 Maybe you didn't "make distclean" between attempts at different configure 
invocations in the same dirty source tree?
 
 Here's one simple recipe to try:
 
 (change /tmp/test-config if you don't have sufficient space there)
 
 unpack source again 
 cd httpd-2.4.12
 ./configure --enable-mods-shared=few --prefix=/tmp/test-config > cfgout 2>&1 
&& make >makeout 2>&1 && make install > installout 2>&1 && ./httpd -l && 
./httpd -M
 
 Does it finish?  What is the output?  
 

  

Reply via email to