本人在实现对Python源代码进行修改,进行定制Python解释器,对Python的执行pyc和编译pyc时进行加密操作,当时实现了简单的纯算法xor。后来为了实现更加复杂的RSA和AES时,需要在Python源代码中引用系统的openssl库。
引用后,在ubuntu下make源代码时报错了,后来经过不断测试找到解决方法。则需要对Makefile.pre文件进行修改,在编译.o文件时gcc带上-lssl -lcrypt的参数。
直接在Makefile.pre的241行,增加$(OPENSSL_LIBS)即可。修改后如下图。
LIBS= $(OPENSSL_LIBS) -lcrypt -lpthread -ldl -lutil -lm
此时在进行编译则不会报错。