centos configure命令,centos图形界面

centos7怎么编译安装gcc-c++

方法/步骤

1

yum install glibc-static libstdc++-static-y

安装c和c++的静态库(据说如果系统中缺少libc.a和libstdc++.a编译时会出错,但是我没有那么多闲情逸致去试,实践过的朋友可以回复一下,分享一下经验,让大家都长长见识)

2

下载解压gcc,我的gcc目录是gcc-4.8.0

3

进入gcc目录,执行:

./contrib/download_prerequisites

这个神奇的脚本文件会帮我们下载、配置、安装那三个依赖的库。可以节约我们大量的时间和精力。

4

你以为这三个库自动下载了、自动make install了就没事了吗?错!

很多人在编译gcc的时候出现各种奇奇怪怪的错误就是这步没有做好。

它们还不在.so文件的搜索路径里面,需要加进去,最后切记切记一定要执行一下ldconfig。

大致做法为:

1,找到你的共享库文件被install到哪个目录了(updatedb+locate命令)。

2,如果你的库不是直接放在/lib或/usr/lib下,需要修改/etc/ld.so.conf文件,加入你的共享库的路径

3,如果在2中添加了共享库路径,切记要执行一下ldconfig,更新响应cache文件让系统能找到你的共享库。

5

建立临时目录,这个目录用以存放编译时的大量临时文件,是文档要求中必须的。

我是在gcc-4.8.0下建立了一个名为gcc-build-4.8.0的目录,进入它。

mkdir gcc-build-4.8.0

cd gcc-build-4.8.0

配置gcc编译选项

6

强烈建议阅读INSTALL目录下的说明文档,尤其是configure.html,以确定你的编译选项。

比较基本的选项有--enable-languages,说明你要让你的gcc支持那些语言,--disable-multilib不生成编译为其他平台可执行代码的交叉编译器。--disable-checking生成的编译器在编译过程中不做额外检查,也可以使用--enable-checking=xxx来增加一些检查。

网上还说了什么--with-gmp、--with-mpfr、--with-mpc这三个选项,但是如果你3,4步做好了,就不要配了,反之你还是老实点吧别抱侥幸心理了。

调用gcc-4.8.0目录下的configure文件:

例如:

../configure--enable-checking=release--enable-languages=c,c++--disable-multilib

7

执行

../make#不解释

执行编译命令(#在8核的虚拟机上进行编译,每个核分配2个编译任务)

make-j16

make install编译过程CPU核基本100%占用,整个编译用时11分50秒。

检查gcc版本

#你就等吧少年,建议晚上睡觉前做

当然上面三步一定要在前一步顺利结束的情况下进行,如果哪一步出错了,结果都显示error了,就不要再做后面的了。在shell的输出里搜索"error"看具体的出错点是什么,baidu、google一下为什么。

如果你求稳的话,可以在make install之前先make check一下。

联想小新笔记本装centos7系统要怎么安装

一、安装CentOS 7.3

成功引导系统后,会出现下面的界面

界面说明:

Install CentOS 7#安装CentOS7

Test this media& install CentOS7#测试安装文件并安装CentOS 7

Troubleshooting#修复故障

这里选择Install CentOS Linux7,安装CentOS 7,回车,进入下面的界面

语言选择界面,正式生产服务器建议安装英文版本。

Continue继续

选择-系统SYSTEM-安装位置INSTALLTION DESTINATION,进入磁盘分区界面

选择-其它存储选项Other Storage Options-分区Partitoning-我要配置分区I will configure partitioning,

点左上角的“完成Done”,进入下面的界面

新挂载点使用以下分区方案:标准Standard Partition

完成Done

分区前先规划好,swap#交换分区,一般设置为内存的2倍,/#剩余所有空间

备注:生产服务器建议单独再划分一个/data分区存放数据

点左下角的“+”号,挂载点:swap,期望容量:4096,添加挂载点,如下图所示,继续点左下角的“+”号,挂载点:“/”期望容量:留空#默认为剩余所有空间,添加挂载点,如下图所示

点左上角的“完成Done”,进入下面的界面

接受更改Accept Changes,进入下面的界面

软件SOFTWARE”-“软件选择SOFTWARE SELECTION”,我们使用的是Minimal版本,默认是最小化安装。

设置完成后,点Done

开始安装Begin Installation

进入下面的界面

选择-用户设置USER SETTINGS-ROOT密码,进入下面的界面

设置Root密码

如果密码长度少于5位,会提示要按“完成”两次来确认,安装继续。安装完成之后,会进入下面的界面.

重启Reboot

进入登录界面,输入用户名【root】密码【itnihao】,系统登录成功

回到顶部

二、设置IP地址、网关DNS

说明:CentOS 7.x默认安装好之后是没有自动开启网络连接的,所以需要我们自己配置。

在命令行输入#vi/etc/sysconfig/network-scripts/ifcfg-ens33#编辑配置文件,添加修改或添加以下内容。

BOOTPROTO=static#启用静态IP地址

ONBOOT=yes#开启自动启用网络连接

IPADDR=192.168.1.73#设置网关

GATEWAY=192.168.1.1

NETMASK=255.255.255.0

DNS1=114.114.114.114

DNS2=8.8.8.8

:wq!#保存退出

service network restart#重启网络

ping www.baidu.com#测试网络是否正常

ip addr#查看IP地址

至此,CentOS 7.3.1611系统安装配置图解教程完成!

回到顶部

三:附加

1、修改主机名

#hostnamectl set-hostname compute1

2.修改网卡名

CentOS 7.x系统中网卡命名规则被重新定义,可能会是”ifcfg-ens33”等,下面我们把网卡改为ifcfg-eth0这种。

1、cd/etc/sysconfig/network-scripts/

mv ifcfg-ens33 ifcfg-eth0#修改名称

vi ifcfg-eth0#编辑

NAME=eth0#修改

DEVICE=eth0#修改

:wq!#保存退出

2、vi/etc/sysconfig/grub#编辑

在”GRUB_CMDLINE_LINUX“变量中添加一句”net.ifnames=0 biosdevname=0“

:wq!#保存退出

3、运行命令:grub2-mkconfig-o/boot/grub2/grub.cfg#重新生成grub配置并更新内核参数

4、添加udev的规则

在”/etc/udev/rules.d“目录中创建一个网卡规则”70-persistent-net.rules“,并写入下面的语句:

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

#ATTR{address}=="00:0c:29:1e:a3:77"是网卡的MAC地址

cd/etc/udev/rules.d

vi 70-persistent-net.rules#添加

SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="00:0c:29:1e:a3:77",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

:wq!#保存退出

shutdown-r now#重启系统

网卡已经更改为eth0

centos下coreseek安装及使用方法

Coreseek中文全文检索引擎

Coreseek是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场景,用户可以免费下载使用

一,coreseek简介

官方

Coreseek是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和信息处理领域,适用于行业/垂直搜索、论坛/站内搜索、数据库搜索、文档/文献检索、信息检索、数据挖掘等应用场景。商业使用(例如,嵌入到其他程序中)需要获得商业授权。

Coreseek是一个支持中文的全文搜索引擎,意图为其他应用提供高速、低空间占用、高相关度结果的中文全文搜索能力。CoreSeek可以非常容易的与SQL数据库和脚本语言集成。

在Sphinx发行版本中提供的原生搜索API支持PHP、Python、Perl、Rudy和Java。搜索API非常轻量化,可以在几个小时之内移植到新的语言上。第三方API接口和插件提供了对Perl、C#、Haskell、Ruby-on-Rails支持,以及对其他可能的语言或者框架的支持。

版本介绍

Coreseek 3.2稳定版

Coreseek 4.1测式版

Coreseek 5最新版

二,安装Coreseek

注:本文是以centos+mysql做为数据源支持为基础的coreseek安装教程.mysql安装略过.

1,下载coreseek 3.2稳定版,下载其他版本请去官网自行下载

cd/usr/local/src/

wget

tar xzvf coreseek-3.2.14.tar.gz

cd coreseek-3.2.14

安装coreseek之前需要先安装需要预装的软件:yum install make gcc g++ gcc-c++ libtool autoconf automake imake mysql-devel libxml2-devel expat-devel(注:这是centos 64位

其他系统请参考

2,安装mmseg

$ cd mmseg-3.2.14

$./bootstrap#输出的warning信息可以忽略,如果出现error则需要解决

$./configure--prefix=/usr/local/mmseg3

$ make make install

$ cd..

##如果提示libtool: unrecognized option `--tag=CC',请查看libtool问题解决方案

##安装完成后,mmseg使用的词典和配置文件,将自动安装到/usr/local/mmseg3/etc中

##中文分词测试,如果显示不正常,请检查当前环境下的locale和UTF-8中文字符显示设置

$/usr/local/mmseg3/bin/mmseg-d/usr/local/mmseg3/etc src/t1.txt

中文/x分/x词/x测试/x

中国人/x上海市/x

Word Splite took: 1 ms.

3,安装coreseek

$ cd csft-3.2.14

##执行configure,进行编译配置:

$ sh buildconf.sh

$./configure--prefix=/usr/local/coreseek--without-unixodbc--with-mmseg--with-mmseg-includes=/usr/local/mmseg3/include/mmseg/--with-mmseg-libs=/usr/local/mmseg3/lib/--with-mysql

如查提示找不到mysql includes file则使用下面的编译命令

./configure--prefix=/usr/local/coreseek--without-unixodbc--with-mmseg--with-mmseg-includes=/usr/local/mmseg3/include/mmseg/--with-mmseg-libs=/usr/local/mmseg3/lib/--with-mysql-includes=/alidata/server/mysql/include/--with-mysql-libs=/alidata/server/mysql/bin/

make make install

4,测式coreseek

cd../testpack

$/usr/local/coreseek/bin/indexer-c etc/csft.conf

##以下为正常情况下的提示信息:

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

total 0 reads, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg

total 0 writes, 0.000 sec, 0.0 kb/call avg, 0.0 msec/call avg

##

##csft-4.0版显示:ERROR: nothing to do.

##

$/usr/local/coreseek/bin/indexer-c etc/csft.conf--all

##以下为正常索引全部数据时的提示信息:(csft-4.0版类似)

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

indexing index'xml'...

collected 3 docs, 0.0 MB

sorted 0.0 Mhits, 100.0% done

total 3 docs, 7585 bytes

total 0.075 sec, 101043 bytes/sec, 39.96 docs/sec

total 2 reads, 0.000 sec, 5.6 kb/call avg, 0.0 msec/call avg

total 7 writes, 0.000 sec, 3.9 kb/call avg, 0.0 msec/call avg

$/usr/local/coreseek/bin/indexer-c etc/csft.conf xml

##以下为正常索引指定数据时的提示信息:(csft-4.0版类似)

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

indexing index'xml'...

collected 3 docs, 0.0 MB

sorted 0.0 Mhits, 100.0% done

total 3 docs, 7585 bytes

total 0.069 sec, 109614 bytes/sec, 43.35 docs/sec

total 2 reads, 0.000 sec, 5.6 kb/call avg, 0.0 msec/call avg

total 7 writes, 0.000 sec, 3.9 kb/call avg, 0.0 msec/call avg

$/usr/local/coreseek/bin/search-c etc/csft.conf

##以下为正常测试搜索时的提示信息:(csft-4.0版类似)

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

index'xml': query'': returned 3 matches of 3 total in 0.093 sec

displaying matches:

1. document=1, weight=1, published=Thu Apr 1 22:20:07 2010, author_id=1

2. document=2, weight=1, published=Thu Apr 1 23:25:48 2010, author_id=1

3. document=3, weight=1, published=Thu Apr 1 12:01:00 2010, author_id=2

words:

$/usr/local/coreseek/bin/search-c etc/csft.conf-a Twittter和Opera都提供了搜索服务

##以下为正常测试搜索关键词时的提示信息:(csft-4.0版类似)

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

index'xml': query'Twittter和Opera都提供了搜索服务': returned 3 matches of 3 total in 0.038 sec

displaying matches:

1. document=3, weight=24, published=Thu Apr 1 12:01:00 2010, author_id=2

2. document=1, weight=4, published=Thu Apr 1 22:20:07 2010, author_id=1

3. document=2, weight=3, published=Thu Apr 1 23:25:48 2010, author_id=1

words:

1.'twittter': 1 documents, 3 hits

2.'和': 3 documents, 15 hits

3.'opera': 1 documents, 25 hits

4.'都': 2 documents, 4 hits

5.'提供': 0 documents, 0 hits

6.'了': 3 documents, 18 hits

7.'搜索': 2 documents, 5 hits

8.'服务': 1 documents, 1 hits

$/usr/local/coreseek/bin/searchd-c etc/csft.conf

##以下为正常开启搜索服务时的提示信息:(csft-4.0版类似)

Coreseek Fulltext 3.2 [ Sphinx 0.9.9-release(r2117)]

Copyright(c) 2007-2010,

Beijing Choice Software Technologies Inc()

using config file'etc/csft.conf'...

listening on all interfaces, port=9312

三,配置coreseek支持mysql数据源

1,配置csft_mysql.conf文件

复制mysql配置文件到coreseek安装目录etc/下(比如/usr/local/coreseek/etc/)

cp/usr/local/src/coreseek-3.2.14/testpack/etc/csft_mysql.conf/usr/local/coreseek/etc/

cd/usr/local/coreseek/etc/

vi csft_mysql.conf

下面加红部分是需要你自己配置的

官方参考文档:数据源配置:mysql数据源

其他数据源请参考官方

==============================================================

#源定义

sourcephperz

{

type= mysql

sql_host=localhost

sql_user=root

sql_pass=xxxx

sql_db=phperz

sql_port= 3306

sql_query_pre= SET NAMES utf8

sql_query=SELECT id,title,descs,status from article

#sql_query第一列id需为整数

#title、content作为字符串/文本字段,被全文索引

sql_attr_uint=status#从SQL读取到的值必须为整数

#sql_attr_timestamp= date_added#从SQL读取到的值必须为整数,作为时间属性

sql_query_info_pre= SET NAMES utf8#命令行查询时,设置正确的字符集

sql_query_info=SELECT* FROM article WHERE id=$id#命令行查询时,从数据库读取原始数据信息

}

#index定义

indexphperz

{

source=phperz#对应的source名称

path=/usr/local/coreseek/var/data/phperz#请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...

docinfo= extern

mlock= 0

morphology= none

min_word_len= 1

html_strip= 0

#中文分词配置,详情请查看:

charset_dictpath=/usr/local/mmseg3/etc/#BSD、Linux环境下设置,/符号结尾

#charset_dictpath= etc/#Windows环境下设置,/符号结尾,最好给出绝对路径,例如:C:/usr/local/coreseek/etc/...

charset_type= zh_cn.utf-8

}

#全局index定义

indexer

{

mem_limit= 128M

}

#searchd服务定义

searchd

{

listen= 9312

read_timeout= 5

max_children= 30

max_matches= 1000

seamless_rotate= 0

preopen_indexes= 0

unlink_old= 1

pid_file=/usr/local/coreseek/var/log/searchd_mysql.pid#请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...

log=/usr/local/coreseek/var/log/searchd_mysql.log#请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...

query_log=/usr/local/coreseek/var/log/query_mysql.log#请修改为实际使用的绝对路径,例如:/usr/local/coreseek/var/...

}

==============================================================

2,建立索引

路经部分需要改成你自己的地址

/usr/local/coreseek/bin/indexer-c/usr/local/coreseek/etc/csft_mysql.conf--all

可能出现的错误

ERROR: index'phperz': sql_connect: Can't connect to local MySQL server through socket'/var/lib/mysql/mysql.sock'(2)(DSN=mysql://root:***@localhost:3306/phperz).

这是因为mysql的sock文件路经不正确导致的.

确认一下你的mysql.sock路经,建立一个软连接,比如

ln-s/tmp/mysql.sock/var/lib/mysql/mysql.sock

四,coreseek+php使用方式

复制安装止录下的/usr/local/src/coreseek-3.2.14/testpack/api/sphinxapi.php文件到你的项目里

你的程序里include sphinxapi.php

php使用方法见/usr/local/src/coreseek-3.2.14/testpack/api/test.php

另附我的使用方法:

===============================================================

$wd= trim($_GET['wd']);

include_once(JF_PATH./config/sph_cfg.php);

include_once(JF_PATH./include/sphinxapi.php);

$cl= new SphinxClient();

$cl-SetServer(SPH_SERVER_HOST, SPH_SERVER_POST);

$cl-SetConnectTimeout(3);

$cl-SetArrayResult(true);

$cl-SetMatchMode(1);

$cl-SetFilter(status, array(1));

$cl-SetLimits(0, 10);

$res=$cl-Query($wd, phperz_www);

if($res['matches']){

$rownum=$res['total'];

foreach($res['matches'] as$k=$v){

$re=$this-db-get_one(select* from article where id=.$v['id']);

if(!empty($re)){

$list[]=$re;

}

}

}

print_r($list);

===============================================================

五,coreseek日常维护

启动

/usr/local/coreseek/bin/searchd-c/usr/local/coreseek/etc/csft_mysql.conf

停止

/usr/local/coreseek/bin/searchd-c/usr/local/coreseek/etc/csft_mysql.conf--stop

建立索引

/usr/local/coreseek/bin/indexer-c/usr/local/coreseek/etc/csft_mysql.conf--all

重建索引

/usr/local/coreseek/bin/indexer-c/usr/local/coreseek/etc/csft_mysql.conf--all--rotate

你需要把启动命令加到开机自启动里

把重建索引命令加到计划任务里每天执行

本文为phperz原创,转载请注明出处.

阅读剩余
THE END