1

我想知道是否有人成功地将 Linux 版本的 Mongoose Web 服务器或 Civetweb Web 服务器移植到 FreeBSD。我试图做一个 Make,但是 Linux 和 BSD 之间存在兼容性问题,因为它找不到 -ldl。我在 google 搜索中看到了对此的参考,推荐的解决方案可能超出了我的技能水平。

4

1 回答 1

1

Linux 默认使用 GNU make。它的 makefile 往往与 FreeBSD 的 make 不兼容。因此,您需要使用该/usr/ports/devel/gmake端口安装 GNU make。该程序gmake在 FreeBSD 上调用。

所以对于 mongoose,从 github 下载最新的 mongoose 源码。/usr/ports/devel/gmake然后使用该端口安装 GNU make 。拆包猫鼬;

> tar xf mongoose-5.3.tar.gz
> cd mongoose-5.3/examples

然后编译它;

> gmake
cc hello.c ../mongoose.c -o hello -W -Wall -I.. -pthread -g -pipe 
perl mkdata.pl websocket.html > websocket_html.c
cc websocket.c websocket_html.c ../mongoose.c -o websocket  -W -Wall -I.. -pthread -g -pipe 
cc server.c ../mongoose.c -o server  -W -Wall -I.. -pthread -g -pipe 
cc post.c ../mongoose.c -o post -W -Wall -I.. -pthread -g -pipe 
cc multi_threaded.c ../mongoose.c -o multi_threaded -W -Wall -I.. -pthread -g -pipe 
cc upload.c ../mongoose.c -o upload -W -Wall -I.. -pthread -g -pipe 
cc auth.c ../mongoose.c -o auth -W -Wall -I.. -pthread -g -pipe

Civetweb 也使用gmake.

于 2014-05-24T08:59:42.640 回答