3.2 在Centos安装cvat开发环境


前言

环境:Centos7.6 64 2核4G 腾讯云 轻量服务器 [参考链接:cvat安装官方文档](https://opencv.github.io/cvat/docs/contributing/development-environment//)

1.安装必须的依赖

	#build-essential
	sudo yum groupinstall "Development Tools"
	#redis-server
	#1.1 下载fedora的 epel 仓库
	sudo yum install epel-release
	#1.2 安装 redis
	sudo yum install redis
	#1.3 查看 redis 状态
	sudo service redis status
	#libldap2-dev 这一块好像没用
	sudo yum install -y epel-release
	sudo yum install -y python36-pip python36-ldap python36-psycopg2 python36-wheel python36-PyYAML
	pip3 install --no-deps --upgrade ldap2pg ldap2pg-devel
	ldap2pg --version
	
	sudo yum install openldap
	sudo yum install openldap-devel
	sudo yum install openssl-devel
	sudo yum install gcc
	pip install python-ldap
	#pkg-config
	#切换到下载文件夹,把包下载到此处
	cd Package
	wget  https://pkg-config.freedesktop.org/releases/pkg-config-0.29.tar.gz
	tar -zxvf pkg-config-0.29.tar.gz
	cd  pkg-config-0.29
	./configure --with-internal-glib
	sudo make && sudo make check && sudo make install
	sudo yum update && sudo yum install -y curl git redis python3-devel python3-pip python3-virtualenv python3-tkinter openldap openldap-devel python-ldap cyrus-sasl cyrus-sasl-devel ffmpeg ffmpeg-devel
sudo yum update && sudo yum install libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel gcc* make -y

2. 安装 Node.js 16 和yarn

	curl --silent --location https://rpm.nodesource.com/setup_16.x | sudo -E bash -
	sudo yum install -y nodejs
	sudo yum install gcc-c++ make
	node --version
	curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc/yum.repos.d/yarn.repo
	sudo yum install yarn
	yarn --version

3.安装Chrome(已安装的跳过此步)

#切换到下载文件夹,把包下载到此处cd Package
	• sudo wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
	• sudo yum install epel-release -ysudo yum install dnf -ysudo dnf localinstall ./google-chrome-stable_current_x86_64.rpm
	• #复制快捷方式到桌面cp /usr/share/applications/google-chrome.desktop /home/lighthouse/Desktop

4.安装4.0以上版FFmpeg libraries (libav*)

	#卸载旧版
	sudo yum remove ffmpeg
	sudo yum autoremove
	#安装指定版本
	#安装yasm
	sudo yum install yasm
	yasm --vesion
	#切换到下载文件夹,把包下载到此处
	cd Package
	wget http://www.ffmpeg.org/releases/ffmpeg-4.4.tar.gz
	tar -xvf ffmpeg-4.4.tar.gz
	cd ffmpeg-4.4/
	sudo mkdir /usr/local/ffmpeg-4.4
	sudo ./configure --enable-shared  --prefix=/usr/local/ffmpeg-4.4 && sudo make && sudo make install
	ln -s /usr/local/ffmpeg-4.4/bin/ffmpeg  /usr/bin/ffmpeg
	#修改/etc/ld.so.conf
	
	echo "/usr/local/ffmpeg-4.4/lib" >> /etc/ld.so.conf
	或者
	vim /etc/ld.so.conf
	#添加下面文字,保存退出
	/usr/local/ffmpeg-4.4/lib
	
	#生效
	ldconfig -v
	
	ffmpeg -version
	#显示下面说明安装成功
	ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
	built with gcc 4.8.5 (GCC) 20150623 (Red Hat 4.8.5-44)
	configuration: --prefix=/usr/local/ffmpeg-4.4
	libavutil      56. 70.100 / 56. 70.100
	libavcodec     58.134.100 / 58.134.100
	libavformat    58. 76.100 / 58. 76.100
	libavdevice    58. 13.100 / 58. 13.100
	libavfilter     7.110.100 /  7.110.100
	libswscale      5.  9.100 /  5.  9.100
libswresample   3.  9.100 /  3.  9.100

5.安装VS Code(自己根据系统搜索安装教程)

#搜索插件名字并安装(安装到远程)
		JavaScript Debugger
		Python
		ESLint
		Stylelint
		vscode-remark-lint
		licenser
		Trailing Spaces

6.确保使用的是 Python 3.9.0 及以上的版本

	#卸载python3
		rpm -qa|grep python3|xargs rpm -ev --allmatches --nodeps 
		whereis python3 |xargs rm -frv ## 删除所有残余文件
		whereis python ##查看现有安装的python
	#centos安装python3.9
		#安装依赖
		sudo yum install libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc* make -y
		#切换到下载文件夹,把包下载到此处
		cd Package
		#安装openssl
		wget https://www.openssl.org/source/openssl-1.1.1m.tar.gz
		tar -zxvf openssl-1.1.1m.tar.gz
		cd openssl-1.1.1m/
		sudo mkdir /usr/local/openssl
		./config --prefix=/usr/local/openssl
		sudo make && sudo make check && sudo make install
		#替换旧版本
		sudo mv /usr/bin/openssl /usr/bin/openssl.old
		sudo mv /usr/lib64/openssl /usr/lib64/openssl.old
		sudo ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
		sudo ln -s /usr/local/openssl/include/openssl /usr/include/openssl
		#修改/etc/ld.so.conf
		vim /etc/ld.so.conf
		#添加下面文字,保存退出
		/usr/local/openssl/lib
		#或su权限下
		echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
		ldconfig -v
		openssl version
		#安装python3.9
		cd ../Package
		wget https://www.python.org/ftp/python/3.9.0/Python-3.9.0.tgz
		tar -zxvf Python-3.9.0.tgz 
		cd Python-3.9.0/
		sudo mkdir /usr/local/python3
		./configure --prefix=/usr/local/python3 --with-openssl=/usr/local/openssl
		sudo make && sudo make check && sudo make install
		#配置软连接
		sudo ln -s /usr/local/python3/bin/python3 /usr/bin/python3
		sudo ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3
		#检查是否安装成功
		Python3
		exit() 
		pip3 list
		#pip更新到最新
/usr/local/python3/bin/python3.10 -m pip install --upgrade pip

7.安装Docker Engine and Docker-Compose

参考:在Centos上安装cvat release 2.2.0 版本

8.配置VSCode打开远程服务器

参考:VSCode使用Remote SSH连接远程服务器

9.本地主机上安装 CVAT

	git clone https://github.com/cvat-ai/cvat
	cd cvat && mkdir logs keys
	#安装虚拟环境模块,已安装跳过
	#python3 -m pip install virtualenv -i https://mirrors.aliyun.com/pypi/simple/
	python3 -m venv .env
	. .env/bin/activate
	pip3 install -U pip wheel setuptools
	pip3 install -r cvat/requirements/development.txt
	python manage.py collectstatic
	python manage.py createsuperuser
	deactivate
	cd ~/cvat
	yarn --frozen-lockfile
	#开一个新终端
	cd cvat
	#打开vscode
	source .env/bin/activate && code
	#开一个新终端,拉取 OpenPolicyAgent Docker 映像
	sudo docker-compose -f docker-compose.yml -f docker-compose.dev.yml up cvat_opa
	#开一个新终端,启动 npm UI 调试服务器
	yarn run start:cvat-ui
	#或者
	CVAT_UI_HOST='<YOUR_HOST_IP>' yarn run start:cvat-ui
	#开一个新终端,开启redis服务
	redis-server

#确保Options=>Uncaught Exceptions被选中
#选择server: debug并运行它 (F5) 以运行 REST 服务器及其工作者
vscode中点F5,选择server: debug
#选择chrome 配置并运行它(F5)以在 Chrome 中打开 CVAT
vscode选择:server: chrome 点F5

8.报错及解决方案

8.1make时编译报错:Could not import runpy module

	
		#解决方案一:升级GCC 到8.3.1
		#1、安装centos-release-scl
		sudo yum install centos-release-scl
		#2、安装devtoolset,注意,如果想安装7.*版本的,就改成devtoolset-7-gcc*,以此类推
		sudo yum install devtoolset-8-gcc*
		#3、激活对应的devtoolset,所以你可以一次安装多个版本的devtoolset,需要的时候用下面这条命令切换到对应的版本
		scl enable devtoolset-8 bash
		#4.大功告成,查看一下gcc版本
		gcc -v
		#5.重新运行代码configure和make代码

8.2 运行pip3 install -r cvat/requirements/development.txt

报错:SetuptoolsDeprecationWarning: The license_file parameter is deprecated, use license_files instead.

	#解决方案:安装libffi-devel,卸载python3,重装python3.9
	sudo yum install libffi-devel

卸载和重装参考"6.确保使用的是 Python 3.9.0 及以上的版本"

8.3 运行pip3 install -r cvat/requirements/development.txt

在安装tensorflow2.8.1(下载的很慢或者memory错误) 和av8.0.2 --no-binary=av 时(一些包not avalible)会报错,可以先把base.txt中的这两行注释掉,然后运行下面的命令单独安装
安装时可能报memory的错误,添加参数–no-cache-dir,不缓存安装

直接安装是从外网下载包,国内可能会慢而造成timeout错误, -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/ --trusted-host pypi.tuna.com

	#添加国内映射
	pip3 install tensorflow==2.8.1 --no-cache-dir -i https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/ --trusted-host pypi.tuna.com
	#安装指定的8.0.2版本会报错,可以直接安装最新版(9.0.2)不影响后续使用
	pip install av
	#也可以一行一行的安装base.txt和development.txt(跳过注释)
	cat cvat/requirements/base.txt | sed -e '/^\s*#.*$/d' -e '/^\s*$/d' | xargs -n 1 pip3 install
	cat cvat/requirements/development.txt | sed -e '/^\s*#.*$/d' -e '/^\s*$/d' | sudo xargs -n 1  pip3 install

8.4 运行sudo python manage.py migrate

报错:
ImportError: Couldn’t import Django. Are you sure it’s installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

	
	解决:
	第一步:先重启django服务
		# 启动python项目
		cd ~/cvat/
		python manage.py runserver 0.0.0.0:8080
		再运行看是否成功,不成功的话进行第二步
	
	第二步:安装django
		https://stackoverflow.com/questions/46210934/importerror-couldnt-import-django
		
		
		sudo pip3 install virtualenv
		mkdir ~/newproject
		cd ~/newproject
		virtualenv newenv
		sourcenewenv/bin/activate
		pip3 install django
		pip install django
		django-admin --version
		Deactivate
		
		验证是否安装成功:
		python3
		import django
		print(django.__version__)
		exit()

8.5 运行sudo python manage.py migrate

#报错:SQLite 3.8.3 or later is required
解决:
	pip3 install pysqlite3
	pip3 install pysqlite3-binary
	#在 base.py 中更改数据库
	vim .env/libs/python3.9.0/site-packages/django/db/backends/sqlite3/base.py
	# from sqlite3 import dbapi2 as Database # 注释这一行
	from pysqlite3 import dbapi2 as Database # 添加这一行
	
重启django server 生效.

8.6 运行sudo python manage.py migrate

上面那一步做了之后还报错,则进行下面的步骤
报错:SQLite 3.9.0 or later is required (found 3.7.17).
解决:
	#第一步:升级到SQLite 3.9.0
	下载路径:https://github.com/sqlite/sqlite/releases/tag/version-3.9.0
	
	tar -zxvf sqlite-version-3.9.0.tar.gz
	cd sqlite-version-3.9.0
	sudo ./configure --prefix=/usr/local && sudo make && sudo make install
	whereis sqlite3
	sqlite3: /usr/bin/sqlite3 /usr/local/bin/sqlite3 /usr/include/sqlite3.h /usr/share/man/man1/sqlite3.1.gz
	显示
	/usr/bin/sqlite3 –version
	.exit
	
	sudo mv /usr/bin/sqlite3 /usr/bin/sqlite3_old
	sudo ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
	
	export LD_LIBRARY_PATH="/usr/local/lib/  write it into ~/.bashrc
	import sqlite3
sqlite3.sqlite_version

再进行8.5,完成之后,问题解决了

参考链接:
3.1 在Centos上安装cvat release 2.2.0 版本
VSCode使用Remote SSH连接远程服务器

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值