抽了点时间研究了下 crypto++ 这个开源库,不过发现其文档极其缺乏,果然是代码即文档……
原以为上手会极其迅速,但是过程中还是遇到了一些问题。现在把它记录下来。
cryptopp 官方说明的是支持多平台的,我也就没多想从官网下了个5.60,下载下来的zip包里面又包含vc的工程文件,又包含makefile
郁闷的是makefile 里默认只生成静态库,而想要在linux 下正常运行 还需要生成.so的动态库。
1、修改下官方自带的 GUNmakefile 修改部分如下
比对一下官网的makefile 把该加的加进去
如果是64位机器 记得去掉# CXXFLAGS += -fPIC 这一行的注释,编译时要加上-fPIC 这个选项
2、运行
make <
原以为上手会极其迅速,但是过程中还是遇到了一些问题。现在把它记录下来。
cryptopp 官方说明的是支持多平台的,我也就没多想从官网下了个5.60,下载下来的zip包里面又包含vc的工程文件,又包含makefile
郁闷的是makefile 里默认只生成静态库,而想要在linux 下正常运行 还需要生成.so的动态库。
1、修改下官方自带的 GUNmakefile 修改部分如下
install:
$(MKDIR) -p $(PREFIX)/include/cryptopp $(PREFIX)/lib $(PREFIX)/bin
$(CP) *.h $(PREFIX)/include/cryptopp
$(CP) *.a $(PREFIX)/lib
$(CP) *.so $(PREFIX)/lib
$(CP) *.exe $(PREFIX)/bin
libcryptopp.a: $(LIBOBJS)
$(AR) $(ARFLAGS) $@ $(LIBOBJS)
$(RANLIB) $@
libcryptopp.so: $(LIBOBJS)
$(CXX) -shared -o $@ $(LIBOBJS)
cryptest.exe: libcryptopp.a $(TESTOBJS)
$(CXX) -o $@ $(CXXFLAGS) $(TESTOBJS) -L. -lcryptopp $(LDFLAGS) $(LDLIBS)
比对一下官网的makefile 把该加的加进去
如果是64位机器 记得去掉# CXXFLAGS += -fPIC 这一行的注释,编译时要加上-fPIC 这个选项
2、运行
make <

本文记录了在Linux系统中编译Crypto++开源库的详细步骤,包括修改官方makefile以生成动态库,并提供了一个RSA加密解密的示例程序。在编译库和示例程序时,需注意使用特定的g++命令行选项。成功运行示例程序后,可以看到加密和解密的文本结果。
最低0.47元/天 解锁文章
1068

被折叠的 条评论
为什么被折叠?



