gpt4 book ai didi

c - Mosquitto - 无法修改 client/lib 文件夹中的代码

转载 作者:行者123 更新时间:2023-11-30 16:40:43 24 4
gpt4 key购买 nike

我正在编写 mosquitto 的扩展,但是我遇到的问题是,只有我在 src 文件夹中所做的更改实际上反射(reflect)在最终的 mosquitto 服务器和 mosquitto_pub/mosquitto_sub 客户端中。我最初使用 CMake 设置并编译了所有这些内容,现在为了重建客户端/服务器,我运行 make clean,然后在 src 和 client 文件夹中运行 make。它们编译得很好,并且构建了新的客户端,但是我在 client/lib 文件夹中的 c 文件中所做的任何更改实际上都没有出现在编译的程序中。有人知道发生了什么事吗?我是否误解了如何编译它或它如何运行?

例如。我修改了 lib/read_handle_client.c 中的 _mosquitto_handle_connack() 以在第 32 行打印不同的消息 ( _mosquitto_log_printf(mosq, MOSQ_LOG_DEBUG, "Client %s receive CONNACK", mosq->id);) 但是没有无论我如何更改文本,它仍然显示原始文本。我什至修改了 lib/read_handle.c 中的 _mosquitto_packet_handle() ,以便当它收到 CONNACK 时它不会执行任何操作,但当我编译并重新运行时它仍然像标准 mosquitto 一样处理 CONNACK 。

编辑:我对这个问题做了更多测试,发现了一些奇怪的东西。如果我删除其中一个文件中的整个方法,编译将失败,因为该方法不存在。如果我只是删除方法内的所有内容,编译就会成功,并且程序将表现得好像我刚刚删除的所有内容仍然存在一样。

最佳答案

我意识到问题很简单,我运行的客户端前面没有 ./,所以它运行的是我 8 个月前安装的(并且完全忘记了)的 mosquitto 客户端,而不是我所在的文件夹。

关于c - Mosquitto - 无法修改 client/lib 文件夹中的代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46520551/

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