/aicrack-ng/mdk4를 설치하려고 하면 다음과 같은 결과가 나타납니다.
error: ld returned 1 exit status make[1]: *** [Makefile:38: mdk4] Error 1 make[1]: Leaving directory '/home/u4/mdk4/src' make: *** [Makefile:10: all] Error 2
mdk4 폴더에서 "make"를 실행하면 이것이 출력의 끝입니다(전체 출력을 제출하면 스팸으로 처리되기 때문입니다).
make[2]: Leaving directory '/home/u4/mdk4/src/attacks'
make -C attacks
make[2]: Entering directory '/home/u4/mdk4/src/attacks'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/home/u4/mdk4/src/attacks'
gcc -g -W -Wall -O3 -D_FILE_OFFSET_BITS=64 -D_REVISION=mdk4-v1 -DCONFIG_LIBNL30 -DCONFIG_LIBNL -I/usr/include/libnl3 -g -O3 -Wall -Wextra -fcommon mdk4.c osdep/libosdep.a debug.o helpers.o mac_addr.o linkedlist.o greylist.o dumpfile.o packet.o brute.o osdep.o channelhopper.o ghosting.o fragmenting.o attacks/attacks.o attacks/auth_dos.o attacks/beacon_flood.o attacks/countermeasures.o attacks/deauth.o attacks/dummy.o attacks/eapol.o attacks/fuzzer.o attacks/ieee80211s.o attacks/probing.o attacks/wids.o -o mdk4 -lnl-genl-3 -lnl-3 -lm -Losdep -losdep -lpthread -lpcap
/usr/bin/ld: attacks/auth_dos.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/beacon_flood.o:/home/u4/mdk4/src/attacks/beacon_flood.c:34: multiple definition of `bssid'; attacks/auth_dos.o:/home/u4/mdk4/src/attacks/auth_dos.c:50: first defined here
/usr/bin/ld: attacks/beacon_flood.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/countermeasures.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/deauth.o:/home/u4/mdk4/src/attacks/deauth.c:19: multiple definition of `bssid'; attacks/auth_dos.o:/home/u4/mdk4/src/attacks/auth_dos.c:50: first defined here
/usr/bin/ld: attacks/deauth.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/dummy.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/eapol.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/fuzzer.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/ieee80211s.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/probing.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
/usr/bin/ld: attacks/wids.o:/home/u4/mdk4/src/attacks/attacks.h:39: multiple definition of `attack_count'; attacks/attacks.o:/home/u4/mdk4/src/attacks/attacks.h:39: first defined here
collect2: error: ld returned 1 exit status
make[1]: *** [Makefile:38: mdk4] Error 1
make[1]: Leaving directory '/home/u4/mdk4/src'
make: *** [Makefile:10: all] Error 2
- 그런 다음 github에서 이 솔루션을 찾았습니다.
설치하다
git clone https://github.com/aircrack-ng/mdk4
cd mdk4
make
sudo make install
# Using Arch Linux (and derived) append `CC=clang` after any `make` in commands.
그런데 문제는 어떻게 해야할지 모르겠다는 겁니다
CC=clang
모든 명령 뒤에 추가됩니다make
.
bspwm 환경에서 manjaro를 사용하고 있습니다.
어떻게 해야 합니까?
편집: 그래서 CC=clang 작업을 수행했는데 이번에는 오류가 약간 다릅니다.
error: linker command failed with exit code 1 (use -v to see invocation) make[1]: *** [Makefile:38: mdk4] Error 1 make[1]: Leaving directory '/home/u4/mdk4/src' make: *** [Makefile:10: all] Error 2
답변1
make
AUR helper/ 를 통하지 않고 직접 실행합니다 . makepkg
그렇죠? 그러면 다음과 같이 간단하게 실행됩니다.
$ make CC=clang
[loads of output here]
$ sudo make install CC=clang
바꾸다
$ make
[loads of output here]
$ sudo make install
make install
이 단계가 꼭 필요한지 의심스럽기는 하지만 CC
포함해도 문제가 되지는 않습니다.
이 오래된 대답make
구문 및 전달 변수에 대해 자세히 설명합니다.
당신은 또한 필요할 수 있습니다클랭 설치그렇지 않다면 base-devel
Arch 팀의 일부인 것 같지 않으며 Manjaro에 대해 잘 모르겠습니다.