编译pycaffe过程中遇到的问题及解决
pycaffe是python调用caffe的方式,编译它就是要得到一个so库_pycaffe.so。
如题,在caffe的源码目录下,执行make pycaffe,跳出来一个错误:
$ make pycaffe
CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
/usr/bin/ld: 找不到 -lboost_python
collect2: error: ld returned 1 exit status
make: *** [Makefile:520:python/caffe/_caffe.so] 错误 1
这是由于caffe的代码中用到了boost,通过编译boost可以产生供python调用的so库,就需要编译出libboost_python.so,这个so库是成功编译pycaffe的关键。
首先要安装好boost开发包,ubuntu下通过sudo apt-get install libboost-all-dev安装,结果装上了1.71.0版本,但这个版本在/usr/lib/x86_64-linux-gnu/目录下没有libboost_python.so,这就导致了上面的错误。
于是还是要从源码编译才行。下载了boost_1_69_0源码,解压后,执行
./bootstrap.sh --with-libraries=all
这样生成了相当于make的编译工具b2
可以通过./b2 --help打印一些信息,通过./b2 --show-libraries查看要编译的库都有哪些。
再敲./b2 -j 8编译
再接着安装boost,默认就是安装到/usr/local,通过--prefix=指明安装的根目录路径
sudo ./b2 install --prefix=/usr
也可以不安装,源码目录就是include目录,而lib目录是"源码目录/stage/lib"
由于笔者的系统已经安装了前面提到的libboost-all-dev,所以只需要把缺失的so补上就可以了,于是依次执行以下三条命令:
sudo cp stage/lib/libboost_python27.so.1.69.0 /usr/lib/x86_64-linux-gnu/
sudo ln -s libboost_python27.so.1.69.0 /usr/lib/x86_64-linux-gnu/libboost_python27.so
sudo ln -s libboost_python27.so /usr/lib/x86_64-linux-gnu/libboost_python.so
相关文章:
编译pycaffe过程中遇到的问题及解决
pycaffe是python调用caffe的方式,编译它就是要得到一个so库_pycaffe.so。 如题,在caffe的源码目录下,执行make pycaffe,跳出来一个错误: $ make pycaffe CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp /usr/bin/ld…...
自然语言处理---Transformer机制详解之Transformer优势
1 Transformer的并行计算 对于Transformer比传统序列模型RNN/LSTM具备优势的第一大原因就是强大的并行计算能力. 对于RNN来说,任意时刻t的输入是时刻t的输入x(t)和上一时刻的隐藏层输出h(t-1),经过运算后得到当前时刻隐藏层的输出h(t),这个…...
改进YOLO系列 | YOLOv5/v7 引入 Dynamic Snake Convolution | 动态蛇形卷积
准确分割拓扑管状结构,如血管和道路,在各个领域中至关重要,可以确保下游任务的准确性和效率。然而,许多因素使任务复杂化,包括细小的局部结构和可变的全局形态。在这项工作中,我们注意到管状结构的特殊性,并利用这一知识来引导我们的DSCNet,以在三个阶段同时增强感知:…...
postgresql14-表的管理(四)
表table 创建表 CREATE TABLE table_name --表名 (column_name data_type column_constraint, --字段名、字段类型、约束字段(可选)column_name data_type, --表级别约束字段...,table_constraint );CREATE TABLE emp1 --创建表 AS SELECT * FROM empl…...
Java--Object类
Java中Object类是所有类的父类,是Java中最高层的类。用户创建一个类时,除非指定继承了某个类,否则都是继承于Object类。 由于所有类都继承于Object类,所以所有类都可以重写Object类中的方法。但是Object类中被final修饰的getClass…...
交换机端口灯常亮 端口up状态 服务器设置ip交换机获取不到服务器网卡mac地址 不能通信
环境: 深信服防火墙 8.0.75 AF-2000-FH2130B-SC S6520X-24ST-SI交换机 version 7.1.070, Release 6530P02 问题描述: 交换机一个vlan下有3台服务器,连接端口2、3、4,2和3连接的服务器正常,交换机3端口灯常亮 端口up状态 服务器自动获取不了地址,改为手动设置ip后,交…...
Linux笔记之diff和vimdiff
Linux笔记之diff和vimdiff code review! 文章目录 Linux笔记之diff和vimdiff一.diff1.1.使用diff比较文件夹1.2.使用diff比较文件1.4.colordiff——带颜色输出差异 二.vimdiff2.1.vimdiff颜色差异2.2.vimfiff调整栏宽2.3.修改颜色变谈,使代码可以看清楚2.4.vimdif…...
目标检测YOLO实战应用案例100讲-基于改进的YOLOV5算法的垃圾分类模型
目录 前言 国内外研究现状 目标检测算法发展现状 YOLO算法的发展现状...
我做不到受每个人喜欢
我做不到受每个人喜欢 我想描述一下昨天发生争吵后我个人的观点,希望能够重新呈现出一种积极的态度。 首先,让我简要梳理一下事件的经过,当天我像往常一样去另一个宿舍找人聊天,可能因为说话声音有点大,坐在我后面的那…...
Linux笔记之diff工具软件P4merge的使用
Linux笔记之diff工具软件P4merge的使用 code review! 文章目录 Linux笔记之diff工具软件P4merge的使用1.安装和配置2.使用:p4merge a.cc b.cc3.配置git 参考博文: Ubuntu Git可视化比较工具 P4Merge 的安装/配置及使用 1.安装和配置 $ wget https://cdist2.per…...
使用 OpenSSL 扩展来实现公钥和私钥加密
首先,你需要生成一对公钥和私钥。可以使用 OpenSSL 工具来生成: 1、生成私钥 openssl genpkey -algorithm RSA -out private_key.pem 2、从私钥生成公钥: openssl rsa -pubout -in private_key.pem -out public_key.pem现在你有了一个私钥…...
二、安全与风险管理—安全与风险管理基础
目录 目录 1.什么是信息与信息的生命周期 2.信息安全的基本目标 3.风险管理与控制类型...
rust学习——栈、堆、所有权
文章目录 栈、堆、所有权栈(Stack)与堆(Heap)栈堆性能区别所有权与堆栈 所有权原则变量作用域所有权与函数返回值与作用域 栈、堆、所有权 栈(Stack)与堆(Heap) 栈和堆是编程语言最核心的数据结构,但是在很多语言中,你并不需要深入了解栈与堆。 但对于…...
如何从小白成长为AI工程师笔记
📚入门机器学习基础 对于本科生来说,需要打好数学基础,包括高数、概率论和线性代数。 对于已经上研究生或工作想转行的人来说,可以直接开始学习机器学习算法,重要的是理解算法的原理和推导过程。如果有时间和需要&am…...
fail-fast 和 fail-safe 迭代器
fail-fast 和 fail-safe 迭代器是两种不同的迭代器设计策略,用于在遍历集合(如 ArrayList、HashMap)时处理并发修改的情况。它们的行为和应对策略有所不同: Fail-Fast 迭代器: Fail-Fast 迭代器在遍历集合期间&#x…...
Nvidia显卡基础概念介绍
一、PCIe与SXM 1.1 Nvidia GPU PCIe PCIe(peripheral component interconnect express)是一种高速串行计算机扩展总线标准,是英特尔公司在2001年提出来的,它的出现主要是为了取代AGP接口,优点就是兼容性比较好,数据传输速率高、…...
使用screen实现服务器代码一直运行
1.安装screen sudo apt install screen 2.创建一个screen(创建一个名为chatglm的新的链接,用来一直运行 screen -S chatglm 3.查看进程列表 screen -ls 创建之后,就可以在当前窗口利用cd命令进入要执行的项目中,开始执行…...
Linux系统自有服务
一、Linux中防火墙firewalld 1、什么是防火墙 防火墙:防范一些网络攻击。有软件防火墙、硬件防火墙之分。 防火墙选择让正常请求通过,从而保证网络安全性。 Windows防火墙: Windows防火墙的划分与开启、关闭操作: 2、防火墙的作…...
Andriod学习笔记(二)
页面设计的零碎知识 通用属性设置文本大小设置视图宽高设置视图的对齐方式 页面布局LinearLayoutRelativeLayoutGridLayoutScollView 按钮触控ButtonImageViewImageButton 通用属性 设置文本大小 纯数字的setTextSize方法,内部默认字体单位为sp,sp是An…...
【超级基础版】十进制与二进制的转换
目录 一、为什么是二进制? 二、二进制的加法和乘法 三、二进制向十进制转换 四、十进制整数向二进制转换 五、十进制小数向二进制小数的转换 六、八进制和十六进制的引入 一、为什么是二进制? 我们知道电脑的数据本质上是0和1,就是我们…...
线程与协程
1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指:像函数调用/返回一样轻量地完成任务切换。 举例说明: 当你在程序中写一个函数调用: funcA() 然后 funcA 执行完后返回&…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
最新SpringBoot+SpringCloud+Nacos微服务框架分享
文章目录 前言一、服务规划二、架构核心1.cloud的pom2.gateway的异常handler3.gateway的filter4、admin的pom5、admin的登录核心 三、code-helper分享总结 前言 最近有个活蛮赶的,根据Excel列的需求预估的工时直接打骨折,不要问我为什么,主要…...
Linux-07 ubuntu 的 chrome 启动不了
文章目录 问题原因解决步骤一、卸载旧版chrome二、重新安装chorme三、启动不了,报错如下四、启动不了,解决如下 总结 问题原因 在应用中可以看到chrome,但是打不开(说明:原来的ubuntu系统出问题了,这个是备用的硬盘&a…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...
处理vxe-table 表尾数据是单独一个接口,表格tableData数据更新后,需要点击两下,表尾才是正确的
修改bug思路: 分别把 tabledata 和 表尾相关数据 console.log() 发现 更新数据先后顺序不对 settimeout延迟查询表格接口 ——测试可行 升级↑:async await 等接口返回后再开始下一个接口查询 ________________________________________________________…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
rknn toolkit2搭建和推理
安装Miniconda Miniconda - Anaconda Miniconda 选择一个 新的 版本 ,不用和RKNN的python版本保持一致 使用 ./xxx.sh进行安装 下面配置一下载源 # 清华大学源(最常用) conda config --add channels https://mirrors.tuna.tsinghua.edu.cn…...
在 Visual Studio Code 中使用驭码 CodeRider 提升开发效率:以冒泡排序为例
目录 前言1 插件安装与配置1.1 安装驭码 CodeRider1.2 初始配置建议 2 示例代码:冒泡排序3 驭码 CodeRider 功能详解3.1 功能概览3.2 代码解释功能3.3 自动注释生成3.4 逻辑修改功能3.5 单元测试自动生成3.6 代码优化建议 4 驭码的实际应用建议5 常见问题与解决建议…...
Windows电脑能装鸿蒙吗_Windows电脑体验鸿蒙电脑操作系统教程
鸿蒙电脑版操作系统来了,很多小伙伴想体验鸿蒙电脑版操作系统,可惜,鸿蒙系统并不支持你正在使用的传统的电脑来安装。不过可以通过可以使用华为官方提供的虚拟机,来体验大家心心念念的鸿蒙系统啦!注意:虚拟…...
