其实云服务器活动网站源码分享的问题并不复杂,但是又很多的朋友都不太了解云服务器源码php,因此呢,今天小编就来为大家分享云服务器活动网站源码分享的一些知识,希望可以帮助到大家,下面我们一起来看看这个问题的分析吧!
特别需要强调,grpc需要6.3以上的gcc/g++版本,如果低于此版本的需要参考文档进行升级。
cmake、gcc的版本,ubuntu16.04默认的版本不支持。
1安装必要的依赖工具
安装必要的依赖工具
sudoapt-getinstallautoconfautomakelibtool
如果cmake低于3.15,gcc/g++低于7.0,请根据文档进行安装。查看版本的方式
br检查gcc/g++版本brgcc-vbrg++-v
1.1安装cmake
可以下载更新的版本:
最低版本为3.15。
1.卸载已经安装的旧版的CMake
brsudoapt-getautoremovecmake
2.文件下载解压
brwgethttps://cmake.org/files/v3.23/cmake-3.23.0-linux-x86_64.tar.gz
解压:
brtarzxfcmake-3.23.0-linux-x86_64.tar.gz
查看解压后的目录:
tree-L2cmake-3.23.0-linux-x86_64br\nbrcmake-3.23.0-linux-x86_64br├──binbr│├──ccmakebr│├──cmakebr│├──cmake-guibr│├──cpackbr│└──ctestbr├──docbr│└──cmakebr├──manbr│├──man1br│└──man7br└──sharebr├──aclocalbr├──applicationsbr├──bash-completionbr├──cmake-3.23br├──emacsbr├──iconsbr├──mimebr└──vim
bin下面有各种cmake家族的产品程序.
3.创建软链接
注:文件路径是可以指定的,一般选择在/opt或/usr路径下,这里选择/opt
brsudomvcmake-3.23.0-linux-x86_64/opt/cmake-3.23.0brsudoln-sf/opt/cmake-3.23.0/bin/*/usr/bin/
4.测试版本
brubuntu@VM-16-11-ubuntu:~/rpc$cmake-versionbrcmakeversion3.23.0br\nbrCMakesuitemaintainedandsupportedbyKitware(kitware.com/cmake).
1.2安装gcc/gdb
升级gcc和gdb的版本,至少需要6.3以上的版本。
OperatingSystem
Architectures
Versions
SupportLevel
Linux-Debian,Ubuntu,CentOS
x86,x64
clang6+,GCC6.3+
OfficiallySupported
Windows10+
x86,x64
VisualStudio2017+
OfficiallySupported
MacOS
x86,x64
XCode12+
OfficiallySupported
Linux-Others
x86,x64
clang6+,GCC6.3+
BestEffort
注意:如果已经是高于7.0不需要再次安装。
目标:安装gccg++7的安装包
安装
brsudoapt-getinstall-ysoftware-properties-commonbrsudoadd-apt-repositoryppa:ubuntu-toolchain-r/testbrsudoaptupdatebrsudoaptinstallg++-7-y
建立软连接并检查
brsudoupdate-alternatives–install/usr/bin/gccgcc/usr/bin/gcc-760\\br–slave/usr/bin/g++g++/usr/bin/g++-7brsudoupdate-alternatives–configgccbrgcc-vbrg++-v
显示7.5的版本。
2编译grpc
推荐使用cmake的方式进行编译。grpc安装过程比较依赖网络的通畅性(容易被墙),我是租用了腾讯云香港服务器下载的grpc源代码,他不仅是grpc源码本身,还依赖了很多第三方库,比如protobufer。大家可以直接使用我提供的源码包(900+MB,记得先解压)进行编译。
如果不能翻墙,直接采用我提供的压缩包grpc-v1.45.2.tar.bz2,则解压
br解压方式:brtar-jxfgrpc-v1.45.2.tar.bz2
解压完直接跳到步骤4.编译和安装。如果能翻墙则可以从步骤1.下载源码开始。
下载源码
brgitclonehttps://github.com/grpc/grpc
查看版本并选择合适的版本,这里选择v1.45.2相对较新的版本
brgittagbrgitcheckoutv1.45.2
查看此时grpc目录内容的大小du-h–max-depth=1,可以看到427M左右
brubuntu@VM-16-11-ubuntu:~/rpc/grpc$du-h–max-depth=1br348M./.gitbr32K./summerofcodebr1.5M./docbr6.5M./toolsbr4.0K./spm-core-includebr24M./testbr80K./cmakebr3.0M./third_partybr4.0K./spm-cpp-includebr1.5M./templatesbr8.0K./.bazelcibr1.9M./includebr5.0M./examplesbr34M./srcbr268K./etcbr64K./.githubbr284K./bazelbr427M.br\n
下载第三方依赖库,下载完后会发现整个grpc目录内容明显变大
brgitsubmoduleupdate–init
再次查看目录大小,占用了1.3G。
brubuntu@VM-16-11-ubuntu:~/rpc/grpc$du-h–max-depth=1br899M./.gitbr32K./summerofcodebr1.5M./docbr6.5M./toolsbr4.0K./spm-core-includebr24M./testbr80K./cmakebr291M./third_partybr4.0K./spm-cpp-includebr1.5M./templatesbr8.0K./.bazelcibr1.9M./includebr5.0M./examplesbr34M./srcbr268K./etcbr64K./.githubbr284K./bazelbr1.3G
编译和安装
brmkdir-pcmake/buildbrcdcmake/buildbrcmake../..brmakebrsudomakeinstall
3protobuf安装
不用手动安装protobuf,不然版本可能和grcp不匹配,必须在grpc执行gitsubmoduleupdate–init命令之后生成的third_party/protobuf里面编译安装对应的protobuf。
brcdthird_party/protobuf/br./autogen.shbr./configure–prefix=/usr/localbrmakebr\nbrsudomakeinstallbrsudoldconfig启动服务端,监听在50051端口br./greeter_serverbrServerlisteningon0.0.0.0:50051br#启动客户端,服务端返回Helloworldbr./greeter_clientbrGreeterreceived:Helloworld
5参考
ubuntu搭建grpcforC++开发环境wx5bb365de633ed的技术博客51CTO博客该文档提供修改grpc第三方库下载地址的方式进行安装。
6辅助-使用scp命令,远程上传下载文件/文件夹
这里只是提供一种方式供大家可以在服务器之间传递文件,不是该节课程的内容,仅供参考。
从服务器下载文件
brscpusername@servername:/path/filename/local/path
例如:scpubuntu@192.168.1.222:/ubuntu/data/data.txt/desktop/ubuntu把192.168.1.222上的/ubuntu/data/data.txt的文件下载到/desktop/ubuntu目录中
上传本地文件到服务器
brscp/local/path/local_filenameusername@servername:/path
例如:scp/ubuntu/learning/deeplearning.docubuntu@192.168.1.222:/ubuntu/learning把本机/ubuntu/learning/目录下的deeplearning.doc文件上传到192.168.1.222这台服务器上的/ubuntu/learning目录中
从服务器下载整个目录
brscp-rusername@servername:/path/path
例如:scp-rubuntu@192.168.1.222:/home/ubuntu/data/local/local_dir“-r”命令是文件夹目录,把当前/home/ubuntu/data目录下所有文件下载到本地/local/local_dir目录中
上传目录到服务器
brscp-r/pathusername@servername:/path
例如:scp-r/ubuntu/testubuntu@192.168.1.222:/ubuntu/tx“-r”命令是文件夹目录,把当前/ubuntu/test目录下所有文件上传到服务器的/ubuntu/tx/目录中
关于云服务器活动网站源码分享的内容到此结束,希望对大家有所帮助。