Alibaba linux 3安装mapserver

在 Alibaba Cloud Linux 3(与 RHEL/CentOS 8 兼容)上安装 MapServer,可以通过源码编译安装。由于 Alibaba Linux 3 默认不包含 MapServer 的官方包,通过EPEL仓库安装失败的概率也很高。

  1. 安装依赖

sudo dnf install -y gcc gcc-c++ make cmake git \ gd-devel gdal-devel proj-devel libxml2-devel \ freetype-devel cairo-devel pango-devel \ libpng-devel libjpeg-turbo-devel sqlite-devel \ postgresql-devel mysql-devel curl-devel \ swig python3-devel php-devel

  1. 下载源码

cd /tmp git clone https://github.com/MapServer/MapServer.git

cd MapServer

git checkout tags/rel-8-0-1 -b rel-8-0-1

  1. 编译安装

mkdir build

cd build

cmake .. \

-DCMAKE_INSTALL_PREFIX=/usr/local \

-DWITH_PROJ=ON \

-DWITH_GDAL=ON \

-DWITH_CAIRO=ON \

-DWITH_FRIBIDI=OFF \

-DWITH_HARFBUZZ=OFF \

-DWITH_PHP=ON \

-DWITH_PYTHON=ON

注意有些非必需项,如CAIRO等,可设成OFF,并留心空格等字符,否则cmake不能正确识别。

make -j$(nproc)

sudo make install

  1. 设置环境变量

echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bashrc source ~/.bashrc

  1. 验证

/usr/local/bin/mapserv -v

系统在运行 mapserv 时可能找不到 MapServer 的共享库 libmapserver.so.2。因为从源码编译安装 MapServer 到 /usr/local(默认位置),但系统的动态链接器(ld.so)不知道去哪里找这个库。

export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH mapserv -v

创建一个 .conf 文件让系统永久识别该路径

echo '/usr/local/lib' | sudo tee /etc/ld.so.conf.d/mapserver.conf

sudo ldconfig

  1. 复制 mapserv 到 CGI 目录

sudo cp /usr/local/bin/mapserv /var/www/cgi-bin/

重启动 Apache

sudo systemctl enable --now httpd

相关推荐
qetfw13 分钟前
UOS DHCP Relay:跨网段分配与 IP、DNS、网关验证
linux·服务器·网络·tcp/ip·uos
明航咨询-陈老师1 小时前
ITSS运行维护服务能力成熟度认证技术纵深:标准模型、等级路径、2026审核趋势与CS/CMMI对比
服务器·数据库·cmmi
szxinmai主板定制专家2 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
缓慢更新2 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
叼烟扛炮2 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
ynchyong2 小时前
Linux 有两个 “版本“
linux·发行版·内核版本
叼烟扛炮2 小时前
Linux 学习笔记(四十四):HTTP 协议解析与极简 Web 服务器实战
linux·服务器·学习
叼烟扛炮3 小时前
Linux 学习笔记(四十三):网络编程进阶——自定义协议解决 TCP 粘包与守护进程
linux·开发语言·网络·笔记·tcp/ip
Decay__3 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
久曲健的测试窝3 小时前
2026软件测试工具选型指南:双模式如何化解UI脚本维护难题
运维·人工智能·科技·aigc