diff --git a/package/utils/busybox/patches/102-trylink_mktemp_fix.patch b/package/utils/busybox/patches/102-trylink_mktemp_fix.patch
new file mode 100644
index 0000000000000000000000000000000000000000..ed1dcbb66ff7234f434e5669d059b06a76c37f3d
--- /dev/null
+++ b/package/utils/busybox/patches/102-trylink_mktemp_fix.patch
@@ -0,0 +1,20 @@
+--- a/scripts/trylink
++++ b/scripts/trylink
+@@ -46,7 +46,7 @@ try() {
+ }
+ 
+ check_cc() {
+-    local tempname="$(mktemp)"
++    local tempname="$(mktemp /tmp/tmp.XXXXXXXXXX)"
+     local r
+     echo "int main(int argc,char**argv){return argv?argc:0;}" >"$tempname".c
+     # Can use "-o /dev/null", but older gcc tend to *unlink it* on failure! :(
+@@ -61,7 +61,7 @@ check_cc() {
+ }
+ 
+ check_libc_is_glibc() {
+-    local tempname="$(mktemp)"
++    local tempname="$(mktemp /tmp/tmp.XXXXXXXXXX)"
+     local r
+     echo "\
+ 	#include <stdlib.h>