CentOS7安装 xmlsec1 编译并运行官方示例
1. 自动安装下列软件和依赖(默认已安装libxml2和libxslt)
yum install xmlsec1-openssl xmlsec1-openssl-devel
2. 查看官网 www.aleksey.com 示例 (sign1.c)
https://www.aleksey.com/xmlsec/api/xmlsec-examples.html
3. 拷贝到linux中,在这里放在 /srv/xmlsec/ 中
4. 查看gcc include 默认位置
`gcc -print-prog-name=cc1plus` -v
在这里找到了如下所示的位置:
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/x86_64-redhat-linux
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/backward
/usr/lib/gcc/x86_64-redhat-linux/4.8.5/include
/usr/local/include
/usr/include
然而xmlsec1、libxml2是在 /usr/include 的二级子目录里面,所以为了编译的时候少写点(嘻嘻),将目录软链接到include下
ln -s /usr/include/libxml2/libxml/ /usr/include/
ln -s /usr/include/xmlsec1/xmlsec/ /usr/include/
5.编译
gcc `xml2-config --cflags --libs` `xslt-config --cflags --libs` -lxmlsec1 -g -D__XMLSEC_FUNCTION__=__FUNCTION__ -DXMLSEC_NO_XKMS=1 -DXMLSEC_CRYPTO_OPENSSL -DXMLSEC_CRYPTO_DYNAMIC_LOADING=1 -DUNIX_SOCKETS -DXMLSEC_NO_SIZE_T sign.c -o sign1
因为是用的自动安装,所以没有configure配置选择,在后面加上配置
- -DXMLSEC_CRYPTO_OPENSSL:使用openssl作为crypto库
- -DXMLSEC_NO_SIZE_T:因为是64位系统,所以要加上 (via:https://www.aleksey.com/pipermail/xmlsec/2007/008005.html)
否则会出现下面的错误
[root@bogon xmlsec]# ./sign1 sign1-tmpl.xml rsakey.pem > xml.xml
func=xmlSecDSigCtxProcessSignatureNode:file=xmldsig.c:line=479:obj=unknown:subj=dsigCtx->signValueNode == NULL:error=100:assertion:
func=xmlSecDSigCtxSign:file=xmldsig.c:line=319:obj=unknown:subj=xmlSecDSigCtxSignatureProcessNode:error=1:xmlsec library function failed:
Error: signature failed
CentOS7安装 xmlsec1 编译并运行官方示例的更多相关文章
- centos7.2下编译安装&&使用-git代码库
centos7.2下编译安装git Git简介 Git是一个分布式版本控制系统 Git vs SVN SVN是典型的集中式版本控制起,版本库集中存放在服务器,当我们用自己的电脑干活儿的时候,需要先从中 ...
- centos7 源码编译安装TensorFlow CPU 版本
一.前言 我们都知道,普通使用pip安装的TensorFlow是万金油版本,当你运行的时候,会提示你不是当前电脑中最优的版本,特别是CPU版本,没有使用指令集优化会让TensorFlow用起来更慢. ...
- CentOS-7.3.1611编译安装 Nginx-1.12.1+mysql-5.7.19+PHP-7.1.8+zabbix-3.4.1
CentOS-7.3.1611编译安装 Nginx-1.12.1+mysql-5.7.19+PHP-7.1.8+zabbix-3.4.1 下载软件 1.下载nginx http://nginx.org ...
- centos7.6环境编译安装php-7.2.24修复最新 CVE-2019-11043 漏洞
先编译安装php-7.2.24,然后编译安装扩展 主版本地址地址:https://www.php.net/distributions/php-7.2.24.tar.gz # 编译 php-7.2.24 ...
- centos7源码编译安装lamp/lnmp
centos7源码编译安装lamp/lnmp 进程:是包工头(相当于是个门,只管开门关门,不管门内的事儿) 线程:是各种工种(cpu调度的是线程) 进程 是一件事情, 线程 是 同一个时间范围内 同时 ...
- CentOS7安装图形界面和修改运行级别
CentOS7系统如果用mini镜像安装或者服务器版本安装,默认是没有安装图形界面的.如果需要额外去安装图形界面,可以手动来安装CentOS Gnome GUI包.然后会总结一下,在CentOS7系统 ...
- Centos7安装Docker 基于Dockerfile 搭建httpd运行环境
Centos7安装Docker 基于Dockerfile 搭建httpd运行环境 docker docker搭建 docker build 本文档完成目标内容如下 使用Docker搭建http服务器一 ...
- centos7.2环境编译安装mysql5.5.48
一.安装cmake编译工具 跨平台编译器 查看是否已经安装了gcc # rpm -qa | grep gcc # yum install -y gcc-c++ # yum install -y cma ...
- centos7.2下caffe的安装及编译
1.前期准备 安装依赖 sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5 ...
随机推荐
- Codeforces Round #691 (Div. 2) C. Row GCD (数学)
题意:给你两个数组\(a\)和\(b\),对于\(j=1,...,m\),找出\(a_1+b_j,...,a_n+b_j\)的\(gcd\). 题解:我们很容易的得出\(gcd\)的一个性质:\(gc ...
- Musical Theme POJ - 1743 后缀数组
A musical melody is represented as a sequence of N (1<=N<=20000)notes that are integers in the ...
- C# EventWaitHandle类解析
EventWaitHandle 类用于在异步操作时控制线程间的同步,即控制一个或多个线程继行或者等待其他线程完成. 构造函数 EventWaitHandle(bool initialState, Ev ...
- RPC是个啥
RPC概念 RPC(Remote Procedure Call)远程过程调用 为什么出现? 分布式应用催生,一个服务需要调用另外一个服务的方法 为什么不用web api的形式调用? 用也可以,但通常是 ...
- 4.Redis客户端的使用
标题 : 4.Redis客户端的使用 目录 : Redis 序号 : 4 Console.WriteLine($"北京和天津之间的距离是:{distance}公里"); #### ...
- 二、mycat基础知识、基本配置
官网 http://www.mycat.io/ Mycat 概要介绍 https://github.com/MyCATApache/Mycat-Server 入门指南 https://github.c ...
- JBoss 5.x和6.x 反序列化漏洞(CVE-2017-12149)
0x01 漏洞简介 该漏洞为 Java反序列化错误类型,存在于 Jboss 的 HttpInvoker 组件中的 ReadOnlyAccessFilter过滤器中.该过滤器在没有进行任何安全检查的情况 ...
- Raven1渗透实战
Raven1渗透实战 目录: 1.wordpress爆破用户 2.wp-config得到数据库账号密码 3.ssh连接4.pythn提权(sudo python -c 'import pty;pty. ...
- u-boot 移植 --->4、Tiny210核心板的DDR初始化下详解
RAM的原理简单学习 DDR是RAM的一种,RAM常见的类型有SRAM,SDRAM,DDR他们的共同特点是,随机存储意味着读写速度快,掉电后数据丢失,所以常用来存储程序中的变量. SRAM 静态随机存 ...
- Vue dynamic component All In One
Vue dynamic component All In One Vue 动态组件 vue 2.x https://vuejs.org/v2/guide/components-dynamic-asyn ...