Hi everyone,
I am new to this forum so would like to say hi . I just got Orange PI PC board and would like to share my experience with it so far.
I just came through the same problem and prepared a patch so it can be easily applied to this code in order to fix the compilation errors. As someone mentioned in this topic the functions that are causing the errors have to be made static. For the less experienced users: save the following content to a file and run git apply <patch file> in rtl8192cu-fixes folder then rerun compilation:
From 89d3d512da5f62535c02b93901dee4c3ef7a356f Mon Sep 17 00:00:00 2001
Date: Sun, 5 Feb 2017 14:07:54 +0100
Subject: [PATCH] Fix linking errors.
Change function declarations to static so they can be included
multiple times without causing linking error.
---
include/ieee80211.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/ieee80211.h b/include/ieee80211.h
index e283a5f..d07bdb8 100755
--- a/include/ieee80211.h
+++ b/include/ieee80211.h
@@ -1194,18 +1194,18 @@ enum ieee80211_state {
(((Addr[2]) & 0xff) == 0xff) && (((Addr[3]) & 0xff) == 0xff) && (((Addr[4]) & 0xff) == 0xff) && \
(((Addr[5]) & 0xff) == 0xff))
#else
-extern __inline int is_multicast_mac_addr(const u8 *addr)
+static __inline int is_multicast_mac_addr(const u8 *addr)
{
return ((addr[0] != 0xff) && (0x01 & addr[0]));
}
-extern __inline int is_broadcast_mac_addr(const u8 *addr)
+static __inline int is_broadcast_mac_addr(const u8 *addr)
{
return ((addr[0] == 0xff) && (addr[1] == 0xff) && (addr[2] == 0xff) && \
(addr[3] == 0xff) && (addr[4] == 0xff) && (addr[5] == 0xff));
}
-extern __inline int is_zero_mac_addr(const u8 *addr)
+static __inline int is_zero_mac_addr(const u8 *addr)
{
return ((addr[0] == 0x00) && (addr[1] == 0x00) && (addr[2] == 0x00) && \
(addr[3] == 0x00) && (addr[4] == 0x00) && (addr[5] == 0x00));
--
2.7.4