1, License 可以使用 Windows 下的 License 文件。
2, 找到/quartus/linux/下的 libsys_cpt.so 文件,使用 gdb 调入此文件,查找函数l_pubkey_verify 的地址,记住它的地址,用 ghex 等编辑器打开此文件,抄写下从刚刚记下的地址开头的数据内容,在 quartus 8.0 中是 55 89 e5 53 81 ec 24 01 00 00 c7 45. 将此处字符串的前三个 55 89 e5 修改为 31 c0 c3。(如何查找地址,参看附件 Crack Quartus Linux.txt 文件)
3, 用刚才记下的字符串为特征,查找 quartus_map 文件,你可以找到惟一的字符串,如法炮制,修改开头三个字节 55 89 e5 为 31 c0 c3。
4, 如果破解还是不行的话,继续修改 quartus alterad quartus_sh 文件。修改前记得备份。(貌似一般只要改第二步的那个libsys_cpt.so,其他的没有改过)
5, 这样子,quartus 算是比较完全的破解了,可以生成不受限制的 nios 核。
//libsys_cpt.so quartus_sh
How to crack Quartus for linux:
===============================
cd <quartus_install_dir>/linux
cp libsys_cpt.so libsys_cpt.so.bak
then run gdb:
gdb> file libsys_cpt.so
gdb> info function l_pubkey_verify
Note the resulting address (for Quartus 7.2 it was 0x000c617b)
quit gdb, then open libsys_cpt.so using a hex editor, then go to the address
that you got from gdb and replace the 3 bytes starting at that address with
those bytes: 31 C0 C3
Alternatively one can get the address of 'l_pubkey_verify' function using the
command:
nm libsys_cpt.so | grep l_pubkey_verify
Now regular quartus tool flow can work, except for the Design Space Explorer,
to get the Design Space Explorer working do the following:
* Note the first few bytes (8 or more) in the 'l_pubkey_verify' function of the
original libsys_cpt.so, and search for those bytes in quartus_sh (using a hex
editor). I found that the number of bytes to search for (which were 8 for
Quartus 8.0) are the minimum number of bytes which will match only once in
quartus_sh.
* Replace the first 3 bytes with those bytes: 31 C0 C3