【算能】stream在docker的环境下编译报错

错误问题一:

/workspace/sophon-stream/element/multimedia/encode/../../../3rdparty/websocketpp/websocketpp/common/asio.hpp:56:14: fatal error: boost/version.hpp: No such file or directory

   56 |     #include <boost/version.hpp>

解决方法:

sudo apt-get install libboost-all-dev

错误问题二:

分析:缺少交叉编译器

[  1%] Building CXX object framework/CMakeFiles/framework.dir/src/element.cc.o

[  2%] Building CXX object element/algorithm/yolov5/CMakeFiles/yolov5.dir/src/yolov5_pre_process.cc.o

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [framework/CMakeFiles/framework.dir/build.make:63: framework/CMakeFiles/framework.dir/src/element.cc.o] Error 127

make[1]: *** [CMakeFiles/Makefile2:516: framework/CMakeFiles/framework.dir/all] Error 2

make[1]: *** Waiting for unfinished jobs....

[  4%] Building CXX object element/algorithm/yolox/CMakeFiles/yolox.dir/src/yolox_pre_process.cc.o

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [element/algorithm/yolov5/CMakeFiles/yolov5.dir/build.make:63: element/algorithm/yolov5/CMakeFiles/yolov5.dir/src/yolov5_pre_process.cc.o] Error 127

make[1]: *** [CMakeFiles/Makefile2:597: element/algorithm/yolov5/CMakeFiles/yolov5.dir/all] Error 2

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [element/algorithm/yolox/CMakeFiles/yolox.dir/build.make:63: element/algorithm/yolox/CMakeFiles/yolox.dir/src/yolox_pre_process.cc.o] Error 127

make[2]: *** Waiting for unfinished jobs....

[  5%] Building CXX object framework/CMakeFiles/ivslogger.dir/common/logger.cc.o

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [framework/CMakeFiles/ivslogger.dir/build.make:63: framework/CMakeFiles/ivslogger.dir/common/logger.cc.o] Error 127

make[2]: *** Waiting for unfinished jobs....

[  6%] Building CXX object element/algorithm/yolox/CMakeFiles/yolox.dir/src/yolox_post_process.cc.o

[  8%] Building CXX object framework/CMakeFiles/ivslogger.dir/common/profiler.cc.o

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [element/algorithm/yolox/CMakeFiles/yolox.dir/build.make:76: element/algorithm/yolox/CMakeFiles/yolox.dir/src/yolox_post_process.cc.o] Error 127

make[1]: *** [CMakeFiles/Makefile2:570: element/algorithm/yolox/CMakeFiles/yolox.dir/all] Error 2

/bin/sh: 1: aarch64-linux-gnu-g++: not found

make[2]: *** [framework/CMakeFiles/ivslogger.dir/build.make:76: framework/CMakeFiles/ivslogger.dir/common/profiler.cc.o] Error 127

make[1]: *** [CMakeFiles/Makefile2:543: framework/CMakeFiles/ivslogger.dir/all] Error 2

make: *** [Makefile:84: all] Error 2

sudo apt-get install g++-aarch64-linux-gnu

错误问题三:

在stream编译的时候,报错CMake Error: Unable to (re)create the private pkgRedirects directory:

CMake Error: Unable to (re)create the private pkgRedirects directory:

解决方法:

找到问题,权限问题,导致

### Nginx Stream 模块转发 Oracle 连接时出现 IO 错误的原因分析 当使用 Nginx 的 `stream` 模块来处理 TCP 流量并尝试将其转发到 Oracle 数据库服务器时,可能会遇到读取调用返回 `-1` 或者类似的 I/O 错误。这通常意味着底层网络连接出现了问题。 #### 可能原因及解决方案 - **配置文件语法错误** 如果 Nginx 配置文件中存在未知指令,则可能导致解析失败或行为异常。对于提到的 `unknown directive "stream"` 报错情况[^2],应确认所使用的 Nginx 版本确实支持该模块,并且正确加载了相应的模块。 - **权限不足** 当启动 Nginx 服务时报错提示无法打开 PID 文件 `/usr/local/nginx/logs/nginx.pid`[^1],可能是因为运行进程缺少对该路径下资源的操作权限。确保 Nginx 用户有足够的权利访问日志目录及其内部文件。 - **SSL/TLS 支持缺失** 编译安装 Nginx 时不包含必要的依赖项也会引发各种问题。特别是涉及到 HTTPS 请求或其他加密通信场景时,如果未指定 OpenSSL 库的位置,在执行某些操作时就会抛出类似 `SSL modules require the OpenSSL library.` 的警告信息[^4]。因此建议重新编译带有完整功能集的服务端程序版本。 针对具体描述中的“Got minus one from a read call”,考虑到这是典型的 socket-level error message(套接字级别的错误消息),可以考虑以下几个方面: - 确认客户端与目标数据库之间的防火墙设置允许相应端口的数据传输; - 使用工具测试两台机器间连通性和延迟状况; - 查看操作系统内核参数调整是否合理,比如增加最大文件句柄数限制等; - 尝试简化请求链路以排除中间环节干扰因素的影响; 另外值得注意的是,虽然 Docker 容器环境下的镜像检索遇到了一些阻碍[^3],但这似乎并不直接影响通过宿主机直接部署的应用实例性能表现。不过为了保险起见还是应该保持良好的容器管理实践习惯,定期更新基础映像以及插件组件。 ```bash # 修改Nginx配置示例 server { listen 1521; proxy_pass backend_oracle_server; # 设置超时时间防止短连接断开重连频繁触发I/O异常 proxy_connect_timeout 60s; proxy_read_timeout 180s; } ```
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_40749043

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值