diff --git a/zebra/ioctl_null.c b/zebra/ioctl_null.c
index 6d8e13a..5d046d3 100644
--- a/zebra/ioctl_null.c
+++ b/zebra/ioctl_null.c
@@ -19,16 +19,29 @@
 }
 
 int if_prefix_add_ipv6 (struct interface *a, struct connected *b) { return 0; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak if_prefix_delete_ipv6 = if_prefix_add_ipv6
+#else
+int if_prefix_delete_ipv6 (struct interface *a, struct connected *b) { return 0; }
+#endif
 
 int if_ioctl (u_long a, caddr_t b) { return 0; }
 
 int if_set_flags (struct interface *a, uint64_t b) { return 0; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak if_unset_flags = if_set_flags
+#else
+int if_unset_flags (struct interface *a, uint64_t b) { return 0; }
+#endif
 
 void if_get_flags (struct interface *a) { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak if_get_metric = if_get_flags
 #pragma weak if_get_mtu = if_get_flags
+#else
+/* void if_get_metric (struct interface *a) { return; } */
+/* void if_get_mtu (struct interface *a) { return; } */
+#endif
 
 #ifdef SOLARIS_IPV6
 #pragma weak if_ioctl_ipv6 = if_ioctl
diff --git a/zebra/kernel_null.c b/zebra/kernel_null.c
index 6b96c6d..ec994a6 100644
--- a/zebra/kernel_null.c
+++ b/zebra/kernel_null.c
@@ -9,9 +9,19 @@
 #include "zebra/connected.h"
 
 int kernel_add_ipv4 (struct prefix *a, struct rib *b) { return 0; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak kernel_delete_ipv4 = kernel_add_ipv4
+#else
+int kernel_delete_ipv4 (struct prefix *a, struct rib *b) { return 0; }
+#endif
+
 int kernel_add_ipv6 (struct prefix *a, struct rib *b) { return 0; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA_PRAGMA
 #pragma weak kernel_delete_ipv6 = kernel_add_ipv6
+#else
+int kernel_delete_ipv6 (struct prefix *a, struct rib *b) { return 0; }
+#endif
+
 int kernel_delete_ipv6_old (struct prefix_ipv6 *dest, struct in6_addr *gate,
                             unsigned int index, int flags, int table)
 { return 0; }
@@ -38,4 +48,8 @@
 }
 
 void kernel_init (void) { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak route_read = kernel_init
+#else
+void route_read (void) { return; }
+#endif
diff --git a/zebra/misc_null.c b/zebra/misc_null.c
index c8cc47d..0680726 100644
--- a/zebra/misc_null.c
+++ b/zebra/misc_null.c
@@ -7,9 +7,15 @@
 #include "zebra/zebra_fpm.h"
 
 void ifstat_update_proc (void) { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak rtadv_config_write = ifstat_update_proc
 #pragma weak irdp_config_write = ifstat_update_proc
 #pragma weak ifstat_update_sysctl = ifstat_update_proc
+#else
+void rtadv_config_write (struct vty *vty, struct interface *ifp) { return; }
+void irdp_config_write (struct vty *vty, struct interface *ifp) { return; }
+void ifstat_update_sysctl (void) { return; }
+#endif
 
 void
 zfpm_trigger_update (struct route_node *rn, const char *reason)
diff --git a/zebra/redistribute_null.c b/zebra/redistribute_null.c
index e57a73b..54198c8 100644
--- a/zebra/redistribute_null.c
+++ b/zebra/redistribute_null.c
@@ -6,21 +6,50 @@
 
 void zebra_redistribute_add (int a, struct zserv *b, int c)
 { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak zebra_redistribute_delete = zebra_redistribute_add
 #pragma weak zebra_redistribute_default_add = zebra_redistribute_add
 #pragma weak zebra_redistribute_default_delete = zebra_redistribute_add
+#else
+void zebra_redistribute_delete  (int a, struct zserv *b, int c)
+{ return; }
+void zebra_redistribute_default_add (int a, struct zserv *b, int c)
+{ return; }
+void zebra_redistribute_default_delete (int a, struct zserv *b, int c)
+{ return; }
+#endif
 
 void redistribute_add (struct prefix *a, struct rib *b)
 { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak redistribute_delete = redistribute_add
+#else
+void redistribute_delete (struct prefix *a, struct rib *b)
+{ return; }
+#endif
 
 void zebra_interface_up_update (struct interface *a)
 { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak zebra_interface_down_update = zebra_interface_up_update
 #pragma weak zebra_interface_add_update = zebra_interface_up_update
 #pragma weak zebra_interface_delete_update = zebra_interface_up_update
+#else
+void zebra_interface_down_update  (struct interface *a)
+{ return; }
+void zebra_interface_add_update (struct interface *a)
+{ return; }
+void zebra_interface_delete_update (struct interface *a)
+{ return; }
+#endif
 
 void zebra_interface_address_add_update (struct interface *a,
 					 	struct connected *b)
 { return; }
+#ifdef HAVE_SYS_WEAK_ALIAS_PRAGMA
 #pragma weak zebra_interface_address_delete_update = zebra_interface_address_add_update
+#else
+void zebra_interface_address_delete_update (struct interface *a,
+                                                struct connected *b)
+{ return; }
+#endif
