【PHP】【扩展安装】【Otp】centos环境下Otp php扩展安装

参考:http://blog.chinaunix.net/uid-15866552-id-271562.html

前言:安装了一次opt的php扩展,从上文中成功安装,特此记录下

系统环境centos7.2+php7.2 

运维工具:宝塔

所需扩展源文件:libetotpverify.so,Makefile ,otp_interface.h,php_otpverify.c,php_otpverify.h

环境路径:PHP的路径:一般是安装目录+/include/php,例如:/usr/local/php5/include/php

拷贝文件到 /usr/local/src/otp_verify_php_Linux

1、cd /usr/local/src/otp_verify_php_Linux

2、ldd libetotpverify.so  查看依赖的库是否有(如下图所示,为所有依赖都存在的情况)

[root@ecs-0000 soft]# ldd libetotpverify.so 
	linux-vdso.so.1 =>  (0x00007ffca058b000)
	libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fdd6adf8000)
	libm.so.6 => /lib64/libm.so.6 (0x00007fdd6aaf6000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fdd6a8e0000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fdd6a512000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fdd6b0ff000)

 

3、yum install libxml*(没有安装的先按照)

4、(php环境目录)/usr/local/php5/bin/php-config --includes 查看路径:PHP_ROOT=/usr/local/php5/include/php

5、是否和vim Makefile中的PHP_ROOT=/usr/local/php5/include/php相同。

 

6、如果不相同,修改 vim Make,指定路径。       

7、如果php编译时没有选择线程安全,这时要修改Makefile中的CFLAGS = -fpic -DTHREAD_SAFETY为CFLAGS = -fpic,即去掉-DTHREAD_SAFETY再Make

8、将libetotpverify.so和php_otpverify.so放到可以访问到的lib路径下,一般libetotpverify.so放到/usr/lib(64位的so放到/usr/lib64下),php_otpverify.so放到PHP的扩展目录下,PHP扩展目录要查看php.ini

9、make

10、将生成的php_otpverify.so移动到php扩展库目录下

11、在php.ini文件中加入扩展调用,extension=php_otpverify.so,重启apahce服务器,如果在phpinfo()中能够看到OTP Verify的扩展就说明已经加载上了。如果没有加载上可以使用  /usr/local/php5/bin/php -i|grep otp来查看下错误

 

 

记录:


[root@ecs-0000 var]# cd /www
[root@ecs-0000 www]# cd soft/
[root@ecs-0000 soft]# dir
etotpverify_linux64_20100526.tar.gz  libetotpverify.a  libetotpverify.so
[root@ecs-0000 soft]# ldd libetotpverify.so 
	linux-vdso.so.1 =>  (0x00007ffca058b000)
	libstdc++.so.6 => /lib64/libstdc++.so.6 (0x00007fdd6adf8000)
	libm.so.6 => /lib64/libm.so.6 (0x00007fdd6aaf6000)
	libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007fdd6a8e0000)
	libc.so.6 => /lib64/libc.so.6 (0x00007fdd6a512000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fdd6b0ff000)
[root@ecs-0000 soft]# yum install libxml*
Loaded plugins: fastestmirror
Determining fastest mirrors
epel/x86_64/metalink                                                                | 6.9 kB  00:00:00     
 * base: centos.usonyx.net
 * epel: hk.mirrors.thegigabit.com
 * extras: centos.usonyx.net
 * updates: centos.usonyx.net
base                                                                                | 3.6 kB  00:00:00     
epel                                                                                | 4.7 kB  00:00:00     
extras                                                                              | 2.9 kB  00:00:00     
updates                                                                             | 2.9 kB  00:00:00     
(1/5): epel/x86_64/group_gz                                                         |  95 kB  00:00:00     
(2/5): epel/x86_64/updateinfo                                                       | 1.0 MB  00:00:00     
(3/5): extras/7/x86_64/primary_db                                                   | 206 kB  00:00:00     
(4/5): epel/x86_64/primary_db                                                       | 6.9 MB  00:00:00     
(5/5): updates/7/x86_64/primary_db                                                  | 4.5 MB  00:00:01     
Package libxml2-2.9.1-6.el7.4.x86_64 already installed and latest version
Package libxml2-devel-2.9.1-6.el7.4.x86_64 already installed and latest version
Package libxml2-python-2.9.1-6.el7.4.x86_64 already installed and latest version
Resolving Dependencies
--> Running transaction check
---> Package libxml++.x86_64 0:2.37.1-1.el7 will be installed
--> Processing Dependency: libglibmm-2.4.so.1()(64bit) for package: libxml++-2.37.1-1.el7.x86_64
--> Processing Dependency: libsigc-2.0.so.0()(64bit) for package: libxml++-2.37.1-1.el7.x86_64
---> Package libxml++-devel.x86_64 0:2.37.1-1.el7 will be installed
--> Processing Dependency: pkgconfig(glibmm-2.4) >= 2.32.0 for package: libxml++-devel-2.37.1-1.el7.x86_64
--> Processing Dependency: glibmm24-devel for package: libxml++-devel-2.37.1-1.el7.x86_64
---> Package libxml++-doc.noarch 0:2.37.1-1.el7 will be installed
--> Processing Dependency: glibmm24-doc for package: libxml++-doc-2.37.1-1.el7.noarch
---> Package libxml2-static.x86_64 0:2.9.1-6.el7.4 will be installed
--> Running transaction check
---> Package glibmm24.x86_64 0:2.56.0-1.el7 will be installed
---> Package glibmm24-devel.x86_64 0:2.56.0-1.el7 will be installed
--> Processing Dependency: pkgconfig(sigc++-2.0) for package: glibmm24-devel-2.56.0-1.el7.x86_64
--> Processing Dependency: perl(XML::Parser) for package: glibmm24-devel-2.56.0-1.el7.x86_64
---> Package glibmm24-doc.noarch 0:2.56.0-1.el7 will be installed
--> Processing Dependency: libsigc++20-doc for package: glibmm24-doc-2.56.0-1.el7.noarch
---> Package libsigc++20.x86_64 0:2.10.0-1.el7 will be installed
--> Running transaction check
---> Package libsigc++20-devel.x86_64 0:2.10.0-1.el7 will be installed
---> Package libsigc++20-doc.noarch 0:2.10.0-1.el7 will be installed
---> Package perl-XML-Parser.x86_64 0:2.41-10.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

===========================================================================================================
 Package                         Arch                 Version                     Repository          Size
===========================================================================================================
Installing:
 libxml++                        x86_64               2.37.1-1.el7                epel                99 k
 libxml++-devel                  x86_64               2.37.1-1.el7                epel                32 k
 libxml++-doc                    noarch               2.37.1-1.el7                epel               493 k
 libxml2-static                  x86_64               2.9.1-6.el7.4               base               590 k
Installing for dependencies:
 glibmm24                        x86_64               2.56.0-1.el7                base               534 k
 glibmm24-devel                  x86_64               2.56.0-1.el7                base               542 k
 glibmm24-doc                    noarch               2.56.0-1.el7                base               5.7 M
 libsigc++20                     x86_64               2.10.0-1.el7                base                37 k
 libsigc++20-devel               x86_64               2.10.0-1.el7                base                71 k
 libsigc++20-doc                 noarch               2.10.0-1.el7                base               3.4 M
 perl-XML-Parser                 x86_64               2.41-10.el7                 base               223 k

Transaction Summary
===========================================================================================================
Install  4 Packages (+7 Dependent packages)

Total download size: 12 M
Installed size: 65 M
Is this ok [y/d/N]: y
Downloading packages:
(1/11): glibmm24-devel-2.56.0-1.el7.x86_64.rpm                                      | 542 kB  00:00:00     
(2/11): glibmm24-2.56.0-1.el7.x86_64.rpm                                            | 534 kB  00:00:00     
(3/11): libsigc++20-2.10.0-1.el7.x86_64.rpm                                         |  37 kB  00:00:00     
(4/11): libsigc++20-devel-2.10.0-1.el7.x86_64.rpm                                   |  71 kB  00:00:00     
(5/11): libxml++-2.37.1-1.el7.x86_64.rpm                                            |  99 kB  00:00:00     
(6/11): libxml++-devel-2.37.1-1.el7.x86_64.rpm                                      |  32 kB  00:00:00     
(7/11): libxml++-doc-2.37.1-1.el7.noarch.rpm                                        | 493 kB  00:00:00     
(8/11): libsigc++20-doc-2.10.0-1.el7.noarch.rpm                                     | 3.4 MB  00:00:01     
(9/11): libxml2-static-2.9.1-6.el7.4.x86_64.rpm                                     | 590 kB  00:00:00     
(10/11): perl-XML-Parser-2.41-10.el7.x86_64.rpm                                     | 223 kB  00:00:00     
(11/11): glibmm24-doc-2.56.0-1.el7.noarch.rpm                                       | 5.7 MB  00:00:01     
-----------------------------------------------------------------------------------------------------------
Total                                                                      5.5 MB/s |  12 MB  00:00:02     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libsigc++20-2.10.0-1.el7.x86_64                                                        1/11 
  Installing : glibmm24-2.56.0-1.el7.x86_64                                                           2/11 
  Installing : libxml++-2.37.1-1.el7.x86_64                                                           3/11 
  Installing : libsigc++20-devel-2.10.0-1.el7.x86_64                                                  4/11 
  Installing : libsigc++20-doc-2.10.0-1.el7.noarch                                                    5/11 
  Installing : glibmm24-doc-2.56.0-1.el7.noarch                                                       6/11 
  Installing : perl-XML-Parser-2.41-10.el7.x86_64                                                     7/11 
  Installing : glibmm24-devel-2.56.0-1.el7.x86_64                                                     8/11 
  Installing : libxml++-devel-2.37.1-1.el7.x86_64                                                     9/11 
  Installing : libxml++-doc-2.37.1-1.el7.noarch                                                      10/11 
  Installing : libxml2-static-2.9.1-6.el7.4.x86_64                                                   11/11 
  Verifying  : glibmm24-doc-2.56.0-1.el7.noarch                                                       1/11 
  Verifying  : libxml2-static-2.9.1-6.el7.4.x86_64                                                    2/11 
  Verifying  : libxml++-devel-2.37.1-1.el7.x86_64                                                     3/11 
  Verifying  : glibmm24-2.56.0-1.el7.x86_64                                                           4/11 
  Verifying  : libsigc++20-devel-2.10.0-1.el7.x86_64                                                  5/11 
  Verifying  : libsigc++20-2.10.0-1.el7.x86_64                                                        6/11 
  Verifying  : perl-XML-Parser-2.41-10.el7.x86_64                                                     7/11 
  Verifying  : libxml++-2.37.1-1.el7.x86_64                                                           8/11 
  Verifying  : glibmm24-devel-2.56.0-1.el7.x86_64                                                     9/11 
  Verifying  : libsigc++20-doc-2.10.0-1.el7.noarch                                                   10/11 
  Verifying  : libxml++-doc-2.37.1-1.el7.noarch                                                      11/11 

Installed:
  libxml++.x86_64 0:2.37.1-1.el7                     libxml++-devel.x86_64 0:2.37.1-1.el7                 
  libxml++-doc.noarch 0:2.37.1-1.el7                 libxml2-static.x86_64 0:2.9.1-6.el7.4                

Dependency Installed:
  glibmm24.x86_64 0:2.56.0-1.el7                        glibmm24-devel.x86_64 0:2.56.0-1.el7               
  glibmm24-doc.noarch 0:2.56.0-1.el7                    libsigc++20.x86_64 0:2.10.0-1.el7                  
  libsigc++20-devel.x86_64 0:2.10.0-1.el7               libsigc++20-doc.noarch 0:2.10.0-1.el7              
  perl-XML-Parser.x86_64 0:2.41-10.el7                 

Complete!
 
[root@ecs-0000 soft]# /www/server/php/72/bin/phpize 
Cannot find config.m4. 
Make sure that you run '/www/server/php/72/bin/phpize' in the top level source directory of the module


[root@ecs-0000 soft]# php -v
PHP 7.2.31 (cli) (built: Jul 15 2020 13:52:43) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

[root@ecs-0000 libetotpverify]# vim Makefile
[root@ecs-0000 libetotpverify]# 
[root@ecs-0000 libetotpverify]# 
[root@ecs-0000 libetotpverify]# make
gcc  -shared -o php_otpverify.so php_otpverify.o  -L/usr/local/lib -L/usr/lib -L. -letotpverify -rdynamic
/usr/bin/ld: skipping incompatible ./libetotpverify.so when searching for -letotpverify
[root@ecs-0000 libetotpverify]# dir
libetotpverify.so  otp_interface.h  php_otpverify.h  php_otpverify.so
Makefile	   php_otpverify.c  php_otpverify.o

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值