CentOS7(二)Go、Java、Python、Node开发环境配置

news/2024/7/24 4:38:27 标签: java, golang, python, 服务器

文章目录

  • Go环境配置
  • Java环境配置
  • Python环境配置
  • Node 环境配置

CentOS7(一)安装和基础配置
CentOS7(二)Go、Java、Python、Node开发环境配置

根据前文,我们将所有的自定义环境变量,都收拢在了 /root/.bash_profile中

为了我们后边方便切换各种编译器的版本,可以使用二进制压缩包的形式进行安装
为了方便我们统一管理,我们将所有的安装源码都下载到 /usr/local/src\

cd /usr/local/src
mkdir /usr/local/env

安装包:

链接: https://pan.baidu.com/s/1gKw9Iiqv6u3uWk7Jb–mRA 提取码: qiao
在这里插入图片描述

Go环境配置

# 解压文件
tar -C /usr/local/env -xzf go1.19.8.linux-amd64.tar.gz
# 添加环境变量
vim ~/.bash_profile
# 添加内容
export GO111MODULE=on
export GOROOT=/usr/local/env/go 
export GOPATH=/home/gopath
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
# 刷新环境变量
source ~/.bash_profile

# 查看安装状态
go version

在这里插入图片描述

Java环境配置

先查看本地是否自带java环境:

yum list installed |grep java
# 解压
tar -C /usr/local/env -xzf jdk-8u351-linux-x64.tar.gz
# 编辑环境变量文件
vi ~/.bash_profile
# 添加内容
export JAVA_HOME=/usr/local/env/jdk1.8.0_351
export JRE_HOME=$JAVA_HOME/jre  
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
# 刷新环境变量
source ~/.bash_profile
# 查看
java -version

在这里插入图片描述

Python环境配置

Anaconda3

# 启动安装并且指定安装目录
bash Anaconda3-2023.03-Linux-x86_64.sh -p /usr/local/env/anaconda3

然后一路 确认 / yes
但是!到这一步!
在这里插入图片描述
问,是否初始化conda,会将环境变量信息默认添加到 ~/.bashrc
我们为了统一化管理,我们将变量挪到 .bash_profile ,或者就不允许,直接后边自己添加环境变量

1. 配置环境变量
vi ~/.bash_profile

2.添加下面的内容
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/usr/local/env/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/usr/local/env/anaconda3/etc/profile.d/conda.sh" ]; then
        . "/usr/local/env/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/usr/local/env/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup
# <<< conda initialize <<<

3. 查看是否已经安装完成
conda -V

在这里插入图片描述
配置镜像源

# anaconda中已经存在的镜像源
conda config --show channels 
# 添加镜像源(永久添加)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
# 设置搜索时显示通道地址
conda config --set show_channel_urls yes
# 非必须 -- 若不想按照上述步骤添加镜像,可使用以下命令直接指定安装时使用的镜像地址(以opencv为例):
conda install opencv -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
# 添加完后查看
conda config --show channels 

在这里插入图片描述
conda有时候会安装失败,可以在激活对应的虚拟环境后,使用pip进行安装

# pip使用国内镜像源
pip install opencv -i https://mirrors.aliyun.com/pypi/simple/

# 此处列举国内常用pip安装镜像:
清华:https://pypi.tuna.tsinghua.edu.cn/simple
阿里云:https://mirrors.aliyun.com/pypi/simple/
中国科技大学: https://pypi.mirrors.ustc.edu.cn/simple/
华中理工大学:https://pypi.hustunique.com/
山东理工大学:https://pypi.sdutlinux.org/
豆瓣:https://pypi.douban.com/simple/

Node 环境配置

c: 压缩
-x:解压
-t:查看内容
-r:向压缩归档文件末尾追加文件
-u:更新原压缩包中的文件

安装前先看一下是否已经安装

# 安装前先看一下是否已经安装
npm -v

在这里插入图片描述
如果报错,就需要进行 更新glibc https://www.cnblogs.com/dingshaohua/p/17103654.html

# 下载glibc
wget http://ftp.gnu.org/gnu/glibc/glibc-2.28.tar.gz
# 解压glibc
tar -C /usr/local/env -xzf glibc-2.28.tar.gz 
# 进入文件夹并进行操作
cd /usr/local/env/glibc-2.28/ && mkdir build  && cd build
# 进行编译
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

可能出现的错误
上步更新glibc 可能会发生错误。
如果没有错误 下边这一步 不用看。
在这里插入图片描述

解决办法:升级gcc与make

# 升级GCC(默认为4 升级为8)
yum install -y centos-release-scl
yum install -y devtoolset-8-gcc*
mv /usr/bin/gcc /usr/bin/gcc-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/gcc /usr/bin/gcc
mv /usr/bin/g++ /usr/bin/g++-4.8.5
ln -s /opt/rh/devtoolset-8/root/bin/g++ /usr/bin/g++

# 升级 make(默认为3 升级为4)
wget http://ftp.gnu.org/gnu/make/make-4.3.tar.gz
tar -xzvf make-4.3.tar.gz && cd make-4.3/
./configure  --prefix=/usr/local/make
make && make install
cd /usr/bin/ && mv make make.bak
ln -sv /usr/local/make/bin/make /usr/bin/make

这时 所有的问题 都已经解决完毕 再重新执行上一步 更新glibc即可

cd /root/glibc-2.28/build
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

在这里插入图片描述
继续更新 glibc
makemake install 在linux中就是安装软件的意思 简单这么理解就好。
这个过程较长,大约半小时左右,建议打一局游戏就好了。

make && make install
# 验证下 是不是好了
npm -v

如果没有安装的话,进行这一步。

# 打开src目录,下载node
cd /usr/local/src

# 下载node - 可以去官网拿到最新的下载
wget https://nodejs.org/dist/v18.16.0/node-v18.16.0-linux-x64.tar.xz

# 解压到 /usr/local/env 中
tar -C /usr/local/env -xvf node-v18.16.0-linux-x64.tar.xz

# 打开环境变量
vi ~/.bash_profile

# 文件最后追加nodejs的解压路径
export NODEJS=/usr/local/env/node-v18.16.0-linux-x64
export PATH=$PATH:$NODEJS/bin

# 刷新环境变量
source ~/.bash_profile

# 查看配置结果
npm -v
node -v

有个简单的方法。安装 Node.js 版本:16.4.2

curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash -
yum install -y nodejs

在这里插入图片描述

就行了


http://www.niftyadmin.cn/n/243451.html

相关文章

ESP32学习二-环境搭建(ESP-IDF V5.0,Ubuntu18.4)

一、准备事项 Ubuntu 18.04.5。具体安装可以参考如下链接。使用VMware安装Ubuntu虚拟机和VMware Tools_t_guest的博客-CSDN博客 乐鑫官方也提供了安装的相关操作。有兴趣可以参考。 快速入门 - ESP32 - — ESP-IDF 编程指南 v5.0.1 文档 注&#xff1a;提前说明&#xff0c;因…

什么是数据库的脏读,不可重复读,幻读?

目录 脏读不可重复读幻读mysql的隔离级别 脏读 数据库的脏读是指一个事务读取了另一个事务还未提交的数据&#xff0c;当另一个事务回滚时&#xff0c;读取该数据的事务将读取到错误的数据。 举例&#xff1a;假设有两个事务A和B&#xff0c;事务A要更新某个数据并执行提交操作…

基于matlab之NR SSB 光束扫描仿真

一、前言 此示例说明如何在 5G NR 系统的发射器 &#xff08;gNB&#xff09; 和接收器 &#xff08;UE&#xff09; 端使用波束扫描。本示例使用同步信号块 &#xff08;SSB&#xff09; 说明了初始访问期间使用的一些波束管理程序。为了完成声束扫描&#xff0c;该示例使用了…

肾脏疾病保养

高血压&#xff0c;常常是糖尿病引起的 得出结论&#xff0c;大多肾病来自高血糖 如果肾病末期&#xff0c;不该吃多 钾、磷(phosphorus)&#xff0c;因这2个矿物质含量高 1.芦笋对肾脏很好&#xff0c;有助于排出尿酸 2.绿叶蔬菜 3.羽衣甘蓝(kale) 4.芹菜 有丰富营养帮助肾脏…

深度学习基础入门篇[六(1)]:模型调优:注意力机制[多头注意力、自注意力],正则化【L1、L2,Dropout,Drop Connect】等

【深度学习入门到进阶】必看系列&#xff0c;含激活函数、优化策略、损失函数、模型调优、归一化算法、卷积模型、序列模型、预训练模型、对抗神经网络等 专栏详细介绍&#xff1a;【深度学习入门到进阶】必看系列&#xff0c;含激活函数、优化策略、损失函数、模型调优、归一化…

淘宝客户失率高怎么办?什么因素会影响?

电商干货 商家开淘宝店铺的时候&#xff0c;很怕的是老客户流失了。或者说经常购买的人不买了&#xff0c;这是淘宝店铺的客户流失。 那么当我们遇到淘宝的客户流失率很高的时候该怎么办呢&#xff1f;有什么样的因素会造成影响呢? 淘宝客户流失率高怎么办 1、做好质量营销 质…

Android MediaCodec dump MP4实践小结

1.应用背景 在一些集成了算法SDK的Android APP中&#xff0c;这些APP是取出摄像头实时帧&#xff0c;然后调用视觉算法SDK并产生检测结果。而当测试人员发现某一场景下算法效果欠佳时&#xff0c;需要从摄像头实时原始数据帧dump一段视频&#xff08;mp4格式&#xff09;&…

ATTCK v12版本战术介绍——防御规避(三)

一、引言 在前几期文章中我们介绍了ATT&CK中侦察、资源开发、初始访问、执行、持久化、提权战术、防御规避部分理论知识及实战研究&#xff0c;本期我们为大家介绍ATT&CK 14项战术中防御规避战术技术第13-18种技术&#xff0c;后续会介绍防御规避其他子技术&#xff0…