2016-12-13 129 views
0

我想跨编译使用头文件mcrypt.h的C代码。我在Ubuntu发行版中编译我的代码,我的目标是openwrt发行版。我收到以下错误,而交叉编译:缺少编译文件

fatal error: mcrypt.h: No such file or directory 
#include <mcrypt.h> 
       ^

下面是用于AES加密的C代码:https://gist.github.com/bricef/2436364 的问题是,我coudn't找出如何使用这个Mcrypt API这里给出:http://linux.die.net/man/3/mcrypt

我困在这一点。

+0

最好不要现在用的mcrypt,它已被放弃的了将近十年。因此它已被弃用,并将在PHP 7.2中从核心和PECL中删除。它不支持标准的PKCS#7(néePKCS#5)填充,只有非标准的null填充甚至不能用于二进制数据。 mcrypt有很多优秀的[bug](https://sourceforge.net/p/mcrypt/bugs/)可以追溯到2003年。相反,考虑使用[defuse](https://github.com/defuse/php-encryption)或者[RNCryptor](https://github.com/RNCryptor),他们提供了一个完整的解决方案,正在维护和正确。 – zaph

回答

1

您必须安装libmcrypt -dev

+0

是的,但我试图安装libmcrypt -dev包为openwrt这是我的分配目标'sudo make menuconfig'来选择要安装的包,但我没有找到它。 – Ahmed202