MapServer / mapcache

MapCache source code directory. Please submit pull requests to the 'main' branch.
https://mapserver.org/mapcache
Other
137 stars 96 forks source link

Having trouble building mapcache against nginx #82

Closed MichaelMarkieta closed 7 years ago

MichaelMarkieta commented 11 years ago

I tried nginx-1.1.19 (from mapserver guide) and mapcache master and I realized that /mapcache/nginx/config doesn't exist, but config.in does.

adding module in /usr/local/src/mapcache/nginx
./configure: error: no /usr/local/src/mapcache/nginx/config was found

Can someone explain why this is done this way? I have to change all instances of files with .in in order for ./configure to recognize the config file. Still fails after I change the file name.

make -f objs/Makefile
make[1]: Entering directory `/usr/local/src/nginx-1.1.19'
gcc -c -pipe  -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Wunused-function -Wunused-variable -Wunused-value -Werror -g  @APR_CPPFLAGS@ -I src/core -I src/event -I src/event/modules -I src/os/unix -I @PROJECT_BINARY_DIR@/include -I @APR_INCLUDE_DIR@ -I objs \
        -o objs/src/core/nginx.o \
        src/core/nginx.c
gcc: error: @APR_CPPFLAGS@: No such file or directory
make[1]: *** [objs/src/core/nginx.o] Error 1
make[1]: Leaving directory `/usr/local/src/nginx-1.1.19'
make: *** [build] Error 2
tbonfort commented 11 years ago

Did you run cmake in the mapcache directory beforehand? If you are using the recommended "out-of-source" builds with cmake, you should point nginx's configure to the build directory, not the source one, i.e., starting from scratch:

cd /mapcache-src mkdir build cd build cmake .. make && make install cd /nginx-src ./configure --add-module=/mapcache-src/build/nginx

hth,

thomas

On Wed, Sep 11, 2013 at 8:18 AM, Michael Markieta notifications@github.comwrote:

I tried nginx-1.1.19 (from mapserver guide) and mapcache master and I realized that /mapcache/nginx/config doesn't exist, but config.in does.

adding module in /usr/local/src/mapcache/nginx ./configure: error: no /usr/local/src/mapcache/nginx/config was found

Can someone explain why this is done this way? I have to change all instances of files with .in in order for ./configure to recognize the config file. Still fails after I change the file name.

make -f objs/Makefile make[1]: Entering directory /usr/local/src/nginx-1.1.19' gcc -c -pipe -O -W -Wall -Wpointer-arith -Wno-unused-parameter -Wunused-function -Wunused-variable -Wunused-value -Werror -g @APR_CPPFLAGS@ -I src/core -I src/event -I src/event/modules -I src/os/unix -I @PROJECT_BINARY_DIR@/include -I @APR_INCLUDE_DIR@ -I objs \ -o objs/src/core/nginx.o \ src/core/nginx.c gcc: error: @APR_CPPFLAGS@: No such file or directory make[1]: *** [objs/src/core/nginx.o] Error 1 make[1]: Leaving directory/usr/local/src/nginx-1.1.19' make: *\ [build] Error 2

— Reply to this email directly or view it on GitHubhttps://github.com/mapserver/mapcache/issues/82 .

MichaelMarkieta commented 11 years ago

Stuck on cmake of mapcache. Important errors include: Could NOT find APU (missing: APU_LIBRARY APU_INCLUDE_DIR) and Could NOT find APACHE (missing: APACHE_INCLUDE_DIR)

-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Looking for strncasecmp
-- Looking for strncasecmp - found
-- Looking for symlink
-- Looking for symlink - found
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.3.4")
-- Found PNG: /usr/lib/x86_64-linux-gnu/libpng.so 
-- Found JPEG: /usr/lib/x86_64-linux-gnu/libjpeg.so 
-- Found CURL: /usr/lib/x86_64-linux-gnu/libcurl.so 
-- Found APR: /usr/lib/libapr-1.so 
-- Could NOT find APU (missing:  APU_LIBRARY APU_INCLUDE_DIR) 
-- checking for module 'pixman'
--   package 'pixman' not found
-- checking for module 'pixman-1'
--   found pixman-1, version 0.24.4
-- Found PIXMAN: /usr/lib/x86_64-linux-gnu/libpixman-1.so 
-- Found SQLITE: /usr/lib/x86_64-linux-gnu/libsqlite3.so 
-- * Configured options for the mapcache library
--  * Mandatory components
--   * png: /usr/lib/x86_64-linux-gnu/libpng.so
--   * jpeg: /usr/lib/x86_64-linux-gnu/libjpeg.so
--   * Curl: /usr/lib/x86_64-linux-gnu/libcurl.so
--   * Apr: /usr/lib/libapr-1.so
--  * Optional components
--   * PIXMAN: /usr/lib/x86_64-linux-gnu/libpixman-1.so
--   * SQLITE: /usr/lib/x86_64-linux-gnu/libsqlite3.so
--   * Berkeley DB: disabled
--   * Memcache: disabled
--   * TIFF: disabled
--   * GeoTIFF: disabled
--   * Experimental TIFF write support: disabled
--   * PCRE: disabled
-- Found GDAL: /usr/lib/libgdal.so 
-- Found GEOS: /usr/lib/libgeos_c.so 
-- * Seeder Configuration Options:
--   * GEOS: /usr/lib/libgeos_c.so
--   * OGR: /usr/lib/libgdal.so
-- Found FCGI: /usr/lib/libfcgi.so 
-- * CGI Configuration Options:
--   * FastCGI: /usr/lib/libfcgi.so
-- Could NOT find APACHE (missing:  APACHE_INCLUDE_DIR) 
CMake Error at CMakeLists.txt:47 (message):
  APACHE library/component could not be found and is a mandatory dependency

    HINT:
    - add the APACHE install directory to the CMAKE_PREFIX_PATH variable (-DCMAKE_PREFIX_PATH="/path/to/APACHE-install-dir;/path/to/other/dirs"
Call Stack (most recent call first):
  apache/CMakeLists.txt:14 (report_mandatory_not_found)

-- * Apache Module support status:
--   * Mapcache Version String: mod_mapcache/1.1dev
CMake Warning at apache/CMakeLists.txt:39 (message):
    * Module will not be automatically installed: module directory not found

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
APU_INCLUDE_DIR (ADVANCED)
   used as include directory in directory /usr/local/src/mapcache
   used as include directory in directory /usr/local/src/mapcache/util
   used as include directory in directory /usr/local/src/mapcache/cgi
   used as include directory in directory /usr/local/src/mapcache/apache
   used as include directory in directory /usr/local/src/mapcache/nginx
APU_LIBRARY (ADVANCED)
    linked by target "mapcache" in directory /usr/local/src/mapcache
radonc commented 10 years ago

for the missing APACHE_INSTALL_DIR I solved it by issuing:

sudo apt-cache search apache2|grep -i devel

sudo apt-get install apache2-threaded-dev

regards, radon_c