我正在尝试为我的旧 NAS 编译最新的 ps3netsrv 源(第一个带有 ARMv7 cpu 的 mycloud 设备 EDIT -> Mindspeed Comcerto C2200 - ARM Cortex-A9<- )
尝试使用包含的 Makefile 正常编译 linux 的源代码,我已经能够获得 64 位和 32 位的二进制文件,但是作为 ARM 的 nas,我需要使用具有我平台确切目标的 makefile。
我稍微修改了 MakeFile 以在 OBJS 上添加不存在的新库。
最初,当我尝试编译时,我在主要条件中遇到错误(我不记得确切在哪一行,但如果它不存在,polarssl 会改用 mbedTLS)
我下载了 mbedTLS 库,现在它似乎可以编译,但我收到了这个错误,在它完成之前
cc -Wall -I. -std=gnu99 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -L. -L. -o ps3netsrv main.o padlock.o aes.o compat.o Console.o File.o VIsoFile.o -lstdc++ -lpthread
/usr/bin/ld: File.o: in function `File::open(char const*, int)':
File.cpp:(.text+0x8ed): undefined reference to `mbedtls_aes_setkey_dec'
/usr/bin/ld: File.cpp:(.text+0xd38): undefined reference to `mbedtls_aes_setkey_enc'
/usr/bin/ld: File.cpp:(.text+0xd7c): undefined reference to `mbedtls_aes_crypt_cbc'
/usr/bin/ld: File.cpp:(.text+0xdaa): undefined reference to `mbedtls_aes_setkey_dec'
/usr/bin/ld: File.o: in function `File::decrypt_data(mbedtls_aes_context&, unsigned char*, int, unsigned int)':
File.cpp:(.text+0x1840): undefined reference to `mbedtls_aes_crypt_cbc'
查看库源代码,我注意到 mbedtls_aes_setkey_enc 函数和其他一些函数不存在,但是在名为 mbedtls_aes_setkey_enc_ALT 的注释下有函数。
试图删除 // 但还是一样。
有什么建议吗?
提前致谢
PS:作为参考,我按照本教程从 r/ps3homebrew 开始。