我在 Mac OS X 10.7.3 上安装了 xmlsec 1.2.12 和 OpenSSL 0.9.8w,安装后,在"检查"期间都跳过了测试。
OpenSSL 0.9.8w 由
sudo ./config --prefix=/usr/local/ no-asm
sudo make install
XMLSEC 1.2.12 by
sudo ./configure --with-openssl=/usr/local/
sudo make install
我在尝试对 xml 进行签名时收到错误消息
func=xmlSecCryptoDLLibraryCreate:file=dl.c:line=146:obj=lt_dlopenext:subj=unknown:error=7:io function failed:filename=libxmlsec1-openssl
func=xmlSecCryptoDLGetLibraryFunctions:file=dl.c:line=498:obj=unknown:subj=xmlSecCryptoDLLibraryCreate:error=1:xmlsec library function failed:crypto=openssl
func=xmlSecCryptoDLLoadLibrary:file=dl.c:line=449:obj=unknown:subj=xmlSecCryptoDLGetLibraryFunctions:error=1:xmlsec library function failed:
Error: unable to load xmlsec-openssl library. Make sure that you have this it installed, check shared libraries path (LD_LIBRARY_PATH) envornment variable or use "--crypto" option to specify different crypto engine.
Error: initialization failed
我也尝试了 xmlsec 1.2.18 和 openssl 1.0.1b,但结果是一样的。是否有人在 Mac OS X 10.7.3 上成功安装了 xmlsec?请给我一些建议。
我使用 MacPorts 在 10.6、10.7 和 10.8 下安装 XMLSEC
MacPorts 在/opt/local/lib 编译了一个 openssl 包,所以我使用以下命令对要签名的节点是"infNFe"的 XML 文件进行签名:
export LD_LIBRARY_PATH=/opt/local/lib; /opt/local/bin/xmlsec1 sign --id-attr:Id infNFe --output signed_xmlsec.xml --pkcs12 yourCertificate.pfx --pwd thePasswordHere --trusted-pem yourCertificate.pem unsigned.xml
我认为这将解决您的问题。