gpt4 book ai didi

c++ - 将自定义 Apache 2.4 模块与 Linux 上的 httpd/apr 库静态链接时出错

转载 作者:太空宇宙 更新时间:2023-11-04 09:06:21 31 4
gpt4 key购买 nike

我正在尝试将我的模块移动到 Linux Apache 2.4,但我遇到了链接问题。在 Windows 上,libhttpd.lib 可用于链接以及 apr/apr-util 库。 lib* httpd apr 和 aprutil 在我的 Windows 安装上都是静态链接的。我想对 Linux 安装执行相同的操作。

根据可用的有限文档,我无法使用 APXS,因为我的模块是用 C++ 编写的。

我很难在 Linux 上找到服务器的存档文件。我需要链接什么才能让我的模块工作?

源能够在 Windows 主机上链接和执行。

示例错误:

    /home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:367: undefined reference to `pthread_mutexattr_init'
/home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:374: undefined reference to `pthread_mutexattr_setpshared'
/home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:384: undefined reference to `pthread_mutexattr_setrobust_np'
/home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:393: undefined reference to `pthread_mutexattr_setprotocol'
/home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:414: undefined reference to `pthread_mutexattr_destroy'
/home/ec2-user/httpd-2.4.2/srclib/apr/locks/unix/proc_mutex.c:408: undefined reference to `pthread_mutexattr_destroy'

谢谢

最佳答案

这些错误意味着您没有将 -pthread 添加到您的编译命令行,因此您没有获得链接的 pthread 库。

(注意:它是 -pthread,而不是 -lpthread - 它不仅仅是一个链接器选项。)

关于c++ - 将自定义 Apache 2.4 模块与 Linux 上的 httpd/apr 库静态链接时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10454343/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com