Как правило, хорошо, если вы используете оригинальные источники (авторские репозитории). Предоставленная вами ссылка на github не является оригинальной. После долгих поисков я не смог найти оригинальную ссылку, веб-страница автора, кажется, не работает (вот ссылка на веб-архив). Затем я искал mdk3 в репозиториях Kali Linux (Kali Linux является преемником возврата). Поскольку Kali Linux - широко известный дистрибутив Linux, его хранилищам можно доверять.
Следующие шаги работали для меня.
git clone git://git.kali.org/packages/mdk3.git
patch <makefile.patch #<patch the source to get rid of "undefined reference to pthread_create" while doing make
make
make install
Содержимое файла патча makefile.patch
следующее.
diff --git a/Makefile b/Makefile
index 20182a2..e6f5739 100644
--- a/Makefile
+++ b/Makefile
@@ -1,4 +1,4 @@
-CFLAGS = -g -O3 -Wall -Wextra
+CFLAGS = -g -O3 -Wall -Wextra -pthread
LINKFLAGS = -lpthread
DESTDIR =
Мне пришлось исправить файл Makefile, чтобы избавиться от ошибки « undefined reference to `pthread_create'
», которую я получал при выполнении make. Патч просто добавляет -pthread
в CLFAGS.
Я использую Ubuntu 15.10 (64-bit)
, но я также проверил ее на Linux Mint 18 (64-bit)
(с использованием живого диска).
Я загрузил файл исправления и репозиторий mdk3 в github (так что я могу использовать https://
вместо git://
для клонирования, поскольку порт для протокола git заблокирован межсетевым экраном университета). Вот ссылка. Makefile
в этом репозитории уже исправлен.