I know this has been covered in a couple of threads.
But the solution was more of a workaround with gcc-4.2 then an actual fix. Mdk3 uses some code from aircrack-ng in the osdep directory, so I used some of that code for linux.c and just updated the file. Additionally there were some innocuous warnings from the printf() statements in mdk3.c. eg.:
The following is a patch to compile mdk3-v5 with gcc-4.3.
mdk3.c:3348: warning: format not a string literal and no format arguments
mdk3.c:3364: warning: format not a string literal and no format arguments
First, download the code and unpack it.
Now, open up your favorite text editor and create a file called mdk3-v5-gcc-4.3.diff.
# wget http://homepages.tu-darmstadt.de/~p_larbig/wlan/mdk3-v5.tar.bz2
# tar -jxf mdk3-v5.tar.bz2
# cd mdk3-v5
Paste the following code from http://pastebin.ca/1389806 into mdk3-v5-gcc-4.3.diff. The text box near the bottom of the page can be used to easily copy and paste the patch code. Save mdk3-v5-gcc-4.3.diff in the current working directory which should be the mdk3-v5 directory.
# nano mdk3-v5-gcc-4.3.diff
Now patch, compile and install mdk3.
# patch -p1 < mdk3-v5-gcc-4.3.diff
# make install