搭建服务器环境

news2024/12/28 4:09:19

如果是刚安装好的操作系统 先安装源里的gcc cmake make 等
apt-get install gcc g++ make cmake autoconf automake libtool

1.gcc 4.8.2

(1)上传gcc
源码在source/下
把gcc-4.8.2.tar.gz放在/home/download/
cd /home/download/
tar -xzvf gcc-4.8.2.tar.gz
cd gcc-4.8.2
(2)安装依赖项
./contrib/download_prerequisites
(3)编译安装
mkdir build
cd build
…/configure -enable-checking=release -enable-languages=c,c++ -disable-multilib
make -j8
make install

*某些高版本gcc编译低版本gcc时,会报错
在这里插入图片描述
cfns.gperf:101:1: error
根据
https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=ec1cc0263f156f70693a62cf17b254a0029f4852
按内容修改对应源码
./md-unwind-support.h:65:47: 错误
找到 md-unwind-support.h line 61
-struct ucontext *uc_ = context->cfa;
+struct ucontext_t *uc_ = context->cfa;

还可能出现的问题以及解决方案:
问题一:(不一定出现)
在这里插入图片描述解决:
cd ./x86_64-unknown-linux-gnu/libstdc+±v3/src/.libs/
rm -rf libstdc++.so.6
ln -snf /usr/lib64/libstdc++.so.6 ./libstdc++.so.6

问题二:
在这里插入图片描述
解决:在asan_linux.cc中添加头文件#include <signal.h> 即可
问题三:
在这里插入图片描述
解决:将第一行代码修改为第二行即可
__res_state statp = (__res_state)state;
struct __res_state statp = (struct __res_state)state;

问题二和问题三解决:https://blog.csdn.net/weixin_45617478/article/details/103381461

2.zlib 1.2.3

(1)上传zlib
源码在source/下
把zlib-1.2.3.tar.gz放在/home/download/
cd /home/download/
tar -xzvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
(2)编译安装
./configure
*基于openssl需要加上额外的编译参数
vim Makefile
在CFLAGS= … 后加入 -fPIC
保持退出
make & make install

3.openssl 1.0.1t

(1)上传openssl
源码在source/下
把openssl-1.0.1t.tar.gz放在/home/download/
cd /home/download/
tar -xzvf openssl-1.0.1t.tar.gz
cd openssl-1.0.1t
(2)编译安装
./config shared zlib
make depend
make & make install
(3)头文件包含
如果发现头文件被安装在诸如/usr/local/ssl/include/openssl/…之类的地方,用软连接等方式放到/usr/local/include
ln -s /usr/local/ssl/include/openssl /usr/local/include/openssl

4.Ace 6.1.0

ace库的编译安装参考:
https://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#unix

(1)上传ace
源码在source/下
把ACE+TAO+CIAO-6.1.0.tar.gz放在/home/download/
tar -xzvf ACE+TAO+CIAO-6.1.0.tar.gz
cd ACE_wrappers
(2)设置(在root下)
export ACE_ROOT=/home/download/ACE_wrappers
export LD_LIBRARY_PATH= A C E R O O T / l i b : ACE_ROOT/lib: ACEROOT/lib:LD_LIBRARY_PATH
注意:使用echo $ACE_ROOT命令查看是否设置成功,若设置不成功则无法make

创建$ACE_ROOT/ace/config.h
加入#include “ace/config-linux.h”
保存退出

创建$ACE_ROOT/include/makeinclude/platform_macros.GNU
加入include $(ACE_ROOT)/include/makeinclude/platform_linux.GNU
INSTALL_PREFIX = /usr/local
保存退出

在$ACE_ROOT下
make
make install

可能会出现一下问题:
error: conflicting declaration ‘typedef struct cpu_set_t cpu_set_t’
/usr/include/x86_64-linux-gnu/bits/cpu-set.h:42:3: error: ‘cpu_set_t’ has a previous declaration as ‘typedef struct cpu_set_t cpu_set_t’
解决方案:
在/ace/config.h中加入
#ifndef __cpu_set_t_defined
#define __cpu_set_t_defined
#endif //!__cpu_set_t_defined

5.Mysql 5.7

(1)sudo apt-get update
(2)sudo apt install mysql-server-5.7
(3)mysql -V

设置mysql的root用户密码
mysql -uroot
use mysql;
update user set authentication_string=password(‘123456’) where user=’root’;
flush privileges;

安装客户端
sudo apt-get install libmysqlclient-dev

6.boost 1.55

(1)上传
boost_1_55_0.tar.gz在source/下
把boost_1_55_0.tar.gz放在/home/download/
tar -xzvf boost_1_55_0.tar.gz
cd boost_1_55_0
(2)编译安装
./bootstrap.sh --with-libraries=all --with-toolset=gcc
./b2 install

可能出现…failed updating 58 targets…(是否影响)

7.protobuf2.6.1

(1)上传
protobuf-2.6.1.tar.gz在source/下
把protobuf-2.6.1.tar.gz放在/home/download/
tar -xzvf protobuf-2.6.1.tar.gz
cd protobuf-2.6.1
(2)编译安装
./configure --prefix=/usr/local/protobuf
make -j8
make check
make install
(3)配置环境
sudo vim /etc/profile
添加
export PATH=$PATH:/usr/local/protobuf/bin/
export PKG_CONFIG_PATH=/usr/local/protobuf/lib/pkgconfig/
保存执行
source /etc/profile
配置动态链接库路径
vim /etc/ld.so.conf 插入: include /usr/local/protobuf/lib
ldconfig
(4)查看版本
protoc --version

8.libunwind 0.99beta(for gperftools)

(1)上传
libunwind-0.99-beta.tar.gz在source/下
把libunwind-0.99-beta.tar.gz放到/home/download/
tar -xzvf libunwind-0.99-beta.tar.gz
cd libunwind-0.99-beta
(2)编译安装
CFLAGS=-fPIC ./configure
make CFLAGS=-fPIC
make CFLAGS=-fPIC install

可能会出现问题:…/include/dwarf.h:318:5: error: unknown type name ‘pthread_mutex_t’
解决:在/home/download/libunwind-0.99-beta/include/dwarf.h添加#include <pthread.h>

9.gperftools-1.9.1 (libtcmalloc)

(1)上传
gperftools-1.9.1.tar.gz在source/下
把gperftools-1.9.1.tar.gz放到/home/download/
tar -xzvf gperftools-1.9.1.tar.gz
cd gperftools
(2)编译安装
./configure
make && make install

可能有编译错误
修改src/base/linuxthreads.cc line196
–static void SignalHandler(int signum, siginfo_t *si, void *data)
++static void SignalHandler(int signum, siginfo *si, void *data)

10.Libcurl 7.40

(1)上传
curl-7.40.0.tar.gz在source/下
把curl-7.40.0.tar.gz放到/home/download/
tar -xzvf curl-7.40.0.tar.gz
cd curl-7.40.0
(2)编译安装
./configure --without-nss -with-ssl=/usr/local/ssl
*注意之前安装openssl的位置
autoreconf -ivf
make && make install

可能出现的问题:
ll /usr/local/lib/libcurl.so.4
rm -r /usr/local/lib/libcurl.so.4
ln -s /usr/lib/x86_64-linux-gnu/libcurl.so.4.5.0 /usr/local/lib/libcurl.so.4

11.Scons

把scons-2.1.0-1.noarch.rpm放到/home/download/
rpm -Uvh scons-2.1.0-1.noarch.rpm

或者直接命令安装
apt install scons

12.libjson_linux

(1)上传
jsoncpp-src-0.5.0.tar.gz在source/下
把jsoncpp-src-0.5.0.tar.gz放到/home/download/
tar -xzvf jsoncpp-src-0.5.0.tar.gz
cd jsoncpp-src-0.5.0
(2)安装
scons platform=linux-gcc
cp /home/download/jsoncpp-src-0.5.0/libs/linux-gcc-4.8.2/* /usr/local/lib/
ln -s /usr/local/lib/libjson_linux-gcc-4.8.2_libmt.so /usr/local/lib/libjson_linux.so
cp -r /home/download/jsoncpp-src-0.5.0/include/json /usr/local/include/

13、libbson-1.0.0

tar -zxvf libbson-1.0.0.tar.gz
cd libbson-1.0.0
mkdir cmake_build
cd cmake_build
cmake -fPIC … -DCMAKE_BUILD_TYPE=Release
make
make install

14、mongo-c-driver

wget https://github.com/mongodb/mongo-c-driver/releases/download/1.0.0/mongo-c-driver-1.0.0.tar.gz
tar -xzf mongo-c-driver-1.0.0.tar.gz
cd mongo-c-driver-1.0.0/
./configure
make
make install

15、redis

redis-2.8.4.tar.gz在source/下
tar -zxvf redis-2.8.4.tar.gz
cd redis-2.8.4
Make
make可能出现问题: error: …/deps/jemalloc/lib/libjemalloc.a:,加上参数重新编译
make MALLOC=libc

make PREFIX=/usr/local/redis install
cp ./redis.conf /usr/local/redis/bin/

cd /usr/local/redis/bin
vim redis.conf
#requirepass foobared去掉注释,foobared改为自己的密码,我在这里改为
requirepass redis@ime

daemonize no 改为yes

保存退出
启动redis
./redis-server redis.conf

16、hiredis-0.13.3

hiredis-0.13.3.tar.gz在source/下
把hiredis-0.13.3.tar.gz放到/home/download/
tar -xzvf hiredis-0.13.3.tar.gz
cd hiredis-0.13.3
make
make install

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/601036.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[POJO]POJO的设计规范Lombok框架

POJO的设计规范 所有用于声明属性的类&#xff0c;都应该遵循以下规范&#xff1a; 存在无参数构造方法 所有属性都是私有权限&#xff08;private&#xff09;的 添加每个属性对应的Setters & Getters 添加基于所有属性的hashCode()与equals() 必须保证&#xff1a;如…

unity | 动画模块之滚动选项框

一、效果动画 如果不是你们想要的&#xff0c;就省的你们继续往下看了 二、作者的话 对于我来说&#xff0c;计算一大堆数据简直太难了&#xff0c;所以自己想了点方法 三、基本功的要求 需要会使用Scroll View 四、进入正题 1.先做一个scrollView把自己想做的东西放进去…

Ubuntu22.04 VirtualBox

Ubuntu22.04 VirtualBox 通常三种虚拟机网络连入模式 桥接网卡 虚拟网卡连入宿主机所在的路由器&#xff0c;公用一个网关地址&#xff0c;自动分配路由器ip到虚拟网卡上&#xff0c;相当于和物理机一样的地址&#xff0c;在同一网段&#xff0c;其他物理机和这个虚拟机一样…

作为一个前端Leader,当你接到一个项目时,应该如何初始化您的项目

1、分析需求 拿到需求后&#xff0c;不是立马动工&#xff0c;我们需要先了解项目的业务需求和用户需求&#xff0c;并明确项目的范围&#xff0c;包括功能点、时间和预算等&#xff0c;来确定项目需求和范围。 2、技术栈选择 根据项目的需求和范围以及团队成员的技术栈&…

aosp12 framework重大bug:contentprovider获取低概率偶现延时10s问题修复经验分享

问题背景&#xff1a; 在android12的版本上&#xff0c;陆陆续续发现一个低概率偶现的问题&#xff0c;那就是桌面第一次启动会存在显示空白10s以上&#xff0c;正常空白一般在1-2s&#xff0c;在个空白10s以上确实就属于非常严重的问题&#xff0c;但这个是一个低概率偶现问题…

Linux - 第21节 - 网络基础(数据链路层)

1.数据链路层 数据链路层解决的问题&#xff1a; • IP拥有将数据跨网络从一台主机送到另一台主机的能力&#xff0c;但IP并不能保证每次都能够将数据可靠的送到对端主机&#xff0c;因此IP需要上层TCP为其提供可靠性保证&#xff0c;比如数据丢包后TCP可以让IP重新发送数据&am…

SpringBoot使用用户输入的自定义数据源启动【附源码】

一、项目背景 不知道小伙伴们有没有遇到过这样的需求&#xff0c;就是一个项目启动时不知道数据源&#xff0c;需要项目无数据源启动后&#xff0c;用户在画面自定义录入数据源信息&#xff0c;然后项目再初始化数据库链接&#xff0c;初始化管理员用户。最后项目进入正常使用…

cuda2 向量加法

向量加法 向量加法程序解读 #include<stdio.h> #include<cuda.h>typedef float FLOAT; #define USE_UNIX 1 区别不同系统 get thread id 1D block and 2D grid #define get_tid() (block)get block id&#xff0c; 2D gridwarm up 可选的&#xff0c;让gpu先运作…

2023年湖北住建厅八大员怎么考取施工员质量员资料员等岗位???

2023年湖北住建厅八大员怎么考取施工员质量员资料员等岗位&#xff1f;&#xff1f;&#xff1f; 2023年湖北住建厅八大员具体包含哪些岗位呢&#xff0c;可以选择的有施工员&#xff0c;质量员&#xff0c;资料员&#xff0c;材料员&#xff0c;机械员&#xff0c;标准员&…

用python进行办公自动化都需要学习什么知识呢?

本文先来分享Python实现自动化办公需要学什么&#xff0c;从哪里学&#xff01;以及自动化办公技巧的资源整理… 很多非IT职场人&#xff0c;想要把Python用到工作中&#xff0c;却不知道如何下手。其实自动化办公无非就是Excel、PPT、Word、邮件、文件处理、数据分析处理、爬虫…

chatgpt赋能python:Python写模拟器脚本

Python写模拟器脚本 Python是一种强大的编程语言&#xff0c;适用于各种任务&#xff0c;包括模拟器编写。模拟器是一种软件程序&#xff0c;能够模拟硬件或软件系统的行为。这篇文章将介绍Python编写模拟器脚本时需要关注的一些关键点。 为什么选择Python编写模拟器脚本 Py…

Vue+springboot个人博客网站系统的设计与实现3virm

本课题采用Java Web技术来设计开发一个可以发表文章、浏览文章的博客系统。课题主要包括前台博客系统以及后台管理系统&#xff1a;前台博客系统应该具备浏览文章&#xff08;能够实现分类查找、关键字查找、首页推荐等&#xff09;、评论文章&#xff08;用户能够对自己喜爱的…

chatgpt赋能python:Python的几次幂

Python的几次幂 Python是一种适用于多种任务的高级编程语言&#xff0c;可以用于网站开发&#xff0c;数据分析&#xff0c;机器学习以及人工智能等。其优越的设计和灵活的语法使其成为程序员众所周知和喜爱的语言。其中&#xff0c;Python中的乘方运算是其中一个非常常用的算…

OA系统开发设计

项目介绍 基于开源流程引擎camunda开发的办公自动化系统。采用前后端分离架构&#xff0c;基于可视化的表单建模、流程建模工具&#xff0c;零代码快速构建业务OA应用。 项目演示 演示地址请私信作者。 技术栈 后端&#xff1a;SpringBootJWTShiromybatis-plus 流程引擎&a…

mysql多级分类设计

简介 在数据库设计中&#xff0c;经常会遇到需要存储多级分类信息的情况&#xff0c;如商品分类、地区分类等。本文将详细介绍如何在MySQL中设计和管理多级分类数据 解决方案 一. 层级字段&#xff08;Hierarchy Field&#xff09;方法 层级字段方法是最常见和简单的多级分…

用redis的消息订阅功能更新应用内的caffeine本地缓存

1、为什么要更新caffeine缓存&#xff1f; 1.1&#xff0c;caffeine缓存的优点和缺点 生产环境中&#xff0c;caffeine缓存是我们在应用中使用的本地缓存&#xff0c; 它的优势在于存在于应用内&#xff0c;访问速度最快&#xff0c;通常都不到1ms就能做出响应&#xff0c; 缺…

Gitlab数据自动备

【场景】&#xff1a;将Gitlab服务器定时备份到Gitlab备份服务器 1.设置Gitlab服务器以及Gitlab备份服务器时间 1.1查看系统时间&#xff1a; date 1.2修改具体时间&#xff1a; date -s "2023-06-02 15:15:00" 1.3把时间写入CMOS&#xff1a; clock -w 1.4把…

深入了解Altium Designer 2023的规则设置

在PCB设计中&#xff0c;规则设置是确保PCB设计符合标准和规范的关键步骤&#xff0c;Altium Designer 2023作为一款强大的PCB设计软件&#xff0c;提供了丰富的规则设置功能&#xff0c;可帮助电子工程师实现高效准确的设计。下面将详细介绍AD 2023中的规则设置功能&#xff0…

【OpenMMLab AI实战营第二期笔记】人体关键点检测与MMPose

人体关键点检测与MMPose 介绍 人体姿态估计&#xff08;Human Pose Estimation&#xff09;是计算机视觉领域中的一个重要研究方向&#xff0c;也是计算机理解人类动作、行为必不可少的一步&#xff0c;人体姿态估计是指通过计算机算法在图像或视频中定位人体关键点&#xff…

TDEngine3.0环境搭建总结

TDEngine3.0环境搭建总结 一、TDengine 介绍二、TDengine的下载三、TDengine Server安装及配置3.1 安装3.2 taos的参数配置3.3 启动3.4 taosAdapter 四、TDengine Client 安装4.1 linux客户端安装4.2 windows客户端安装 一、TDengine 介绍 TDengine 官网 TDengine的介绍   T…