Error compiling official firmware 2.1.0
baiduing opened this issue · 1 comments
baiduing commented
Hi, thanks for this excellent tool. When I compiled official firmware 2.1.0 and 2.0.0 from this page https://github.com/Proxmark/proxmark3/releases, the script stoped with error.
Could please tell me how to solve it? Below is the error message of compiling version 2.1.0.
Thank you very much!
m3 ~$ make clean && make all make -C bootrom clean make[1]: Entering directory '/pm3/bootrom' rm -rf obj/*.o rm -rf obj/*.elf rm -rf obj/*.s19 rm -rf obj/*.map rm -rf obj/*.d rm -rf version.c make[1]: Leaving directory '/pm3/bootrom' make -C armsrc clean make[1]: Entering directory '/pm3/armsrc' rm -rf obj/*.o rm -rf obj/*.elf rm -rf obj/*.s19 rm -rf obj/*.map rm -rf obj/*.d rm -rf version.c make[1]: Leaving directory '/pm3/armsrc' make -C client clean make[1]: Entering directory '/pm3/client' rm -f cli cli.exe flasher flasher.exe proxmark3 proxmark3.exe snooper snooper.ex e obj/nonce2key/crapto1.o obj/nonce2key/crypto1.o obj/nonce2key/nonce2key.o obj/ loclass/cipher.o obj/loclass/cipherutils.o obj/loclass/des.o obj/loclass/ikeys.o obj/loclass/elite_crack.o obj/loclass/fileutils.o obj/mifarehost.o obj/crc.o ob j/crc16.o obj/crc64.o obj/iso14443crc.o obj/iso15693tools.o obj/data.o obj/graph .o obj/ui.o obj/cmddata.o obj/lfdemod.o obj/cmdhf.o obj/cmdhf14a.o obj/cmdhf14b. o obj/cmdhf15.o obj/cmdhfepa.o obj/cmdhflegic.o obj/cmdhficlass.o obj/cmdhfmf.o obj/cmdhfmfu.o obj/cmdhw.o obj/cmdlf.o obj/cmdlfio.o obj/cmdlfhid.o obj/cmdlfem4 x.o obj/cmdlfhitag.o obj/cmdlfti.o obj/cmdparser.o obj/cmdmain.o obj/cmdlft55xx. o obj/cmdlfpcf7931.o obj/pm3_binlib.o obj/scripting.o obj/cmdscript.o obj/pm3_bi tlib.o obj/aes.o obj/protocols.o obj/sha1.o obj/*.o *.o *.moc.cpp cd ../liblua && make clean make[2]: Entering directory '/pm3/liblua' rm -f liblua.a lua luac lapi.o lcode.o lctype.o ldebug.o ldo.o ldump.o lfunc.o l gc.o llex.o lmem.o lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o lt m.o lundump.o lvm.o lzio.o lauxlib.o lbaselib.o lbitlib.o lcorolib.o ldblib.o li olib.o lmathlib.o loslib.o lstrlib.o ltablib.o loadlib.o linit.o lua.o luac.o make[2]: Leaving directory '/pm3/liblua' make[1]: Leaving directory '/pm3/client' make -C recovery clean make[1]: Entering directory '/pm3/recovery' rm -f bootrom.bin fullimage.bin proxmark3_recovery.bin make[1]: Leaving directory '/pm3/recovery' make -C bootrom all make[1]: Entering directory '/pm3/bootrom' perl ../tools/mkversion.pl .. > version.c || cp ../common/default_version.c vers ion.c fatal: not a git repository (or any of the parent directories): .git fatal: not a git repository (or any of the parent directories): .git arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb -mthumb-interwork -o obj/version.o version.c arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb-interwork -o obj/ram-reset.o ram-reset.s arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb-interwork -o obj/flash-reset.o flash-reset.s arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb -mthumb-interwork -o obj/cmd.o ../common/cmd.c arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb -mthumb-interwork -o obj/usb_cdc.o ../common/usb_cdc.c arm-none-eabi-gcc -c -I../include -I../common -Wall -Werror -pedantic -std=c99 - I. -Os -mthumb -mthumb-interwork -o obj/bootrom.o bootrom.c bootrom.c: In function 'flash_mode': bootrom.c:206:3: error: this 'for' clause does not guard... [-Werror=misleading- indentation] for (volatile size_t i=0; i<0x100000; i++); ^~~ bootrom.c:208:2: note: ...this statement, but the latter is misleadingly indente d as if it were guarded by the 'for' for(;;) { ^~~ cc1.exe: all warnings being treated as errors make[1]: *** [../common/Makefile.common:80: obj/bootrom.o] Error 1 make[1]: Leaving directory '/pm3/bootrom' make: *** [Makefile:9: bootrom/all] Error 2 pm3 ~$
Gator96100 commented
ProxSpace is not designed for ancient releases. It is not recommended to use 2.1.0 or 2.0.0. If you need to compile 2.1.0 or 2.0.0 for some reason, I recommend using the ProxSpace version that was available at that time. For 2.1.0 or 2.0.0 this would be the original ProxSpace version from 13.06.2013 (the first commit in this repository), ProxSpace v2.0.2 might work as well.