--- a/lib/prefix.h
+++ b/lib/prefix.h
@@ -44,7 +44,7 @@
  */
 struct ethaddr {
     u_char octet[ETHER_ADDR_LEN];
-} __packed;
+} __attribute__((packed));
 
 
 /*
--- a/pimd/pim_version.h
+++ b/pimd/pim_version.h
@@ -25,6 +25,6 @@
 
 #define PIMD_VERSION_STR "0.166"
 
-const char * const PIMD_VERSION;
+extern const char * const PIMD_VERSION;
 
 #endif /* PIM_VERSION_H */
--- a/pimd/pimd.h
+++ b/pimd/pimd.h
@@ -68,39 +68,39 @@
 #define PIM_MASK_PIM_J_P             (1 << 12)
 #define PIM_MASK_STATIC              (1 << 13)
 
-const char *const PIM_ALL_SYSTEMS;
-const char *const PIM_ALL_ROUTERS;
-const char *const PIM_ALL_PIM_ROUTERS;
-const char *const PIM_ALL_IGMP_ROUTERS;
-
-struct thread_master     *master;
-uint32_t                  qpim_debugs;
-int                       qpim_mroute_socket_fd;
-int64_t                   qpim_mroute_socket_creation; /* timestamp of creation */
-struct thread            *qpim_mroute_socket_reader;
-int                       qpim_mroute_oif_highest_vif_index;
-struct list              *qpim_channel_oil_list; /* list of struct channel_oil */
-struct in_addr            qpim_all_pim_routers_addr;
-int                       qpim_t_periodic; /* Period between Join/Prune Messages */
-struct list              *qpim_upstream_list; /* list of struct pim_upstream */
-struct zclient           *qpim_zclient_update;
-struct zclient           *qpim_zclient_lookup;
-struct pim_assert_metric  qpim_infinite_assert_metric;
-long                      qpim_rpf_cache_refresh_delay_msec;
-struct thread            *qpim_rpf_cache_refresher;
-int64_t                   qpim_rpf_cache_refresh_requests;
-int64_t                   qpim_rpf_cache_refresh_events;
-int64_t                   qpim_rpf_cache_refresh_last;
-struct in_addr            qpim_inaddr_any;
-struct list              *qpim_ssmpingd_list; /* list of struct ssmpingd_sock */
-struct in_addr            qpim_ssmpingd_group_addr;
-int64_t                   qpim_scan_oil_events;
-int64_t                   qpim_scan_oil_last;
-int64_t                   qpim_mroute_add_events;
-int64_t                   qpim_mroute_add_last;
-int64_t                   qpim_mroute_del_events;
-int64_t                   qpim_mroute_del_last;
-struct list              *qpim_static_route_list; /* list of routes added statically */
+extern const char *const PIM_ALL_SYSTEMS;
+extern const char *const PIM_ALL_ROUTERS;
+extern const char *const PIM_ALL_PIM_ROUTERS;
+extern const char *const PIM_ALL_IGMP_ROUTERS;
+
+extern struct thread_master     *master;
+extern uint32_t                  qpim_debugs;
+extern int                       qpim_mroute_socket_fd;
+extern int64_t                   qpim_mroute_socket_creation; /* timestamp of creation */
+extern struct thread            *qpim_mroute_socket_reader;
+extern int                       qpim_mroute_oif_highest_vif_index;
+extern struct list              *qpim_channel_oil_list; /* list of struct channel_oil */
+static struct in_addr            qpim_all_pim_routers_addr;
+extern int                       qpim_t_periodic; /* Period between Join/Prune Messages */
+extern struct list              *qpim_upstream_list; /* list of struct pim_upstream */
+extern struct zclient           *qpim_zclient_update;
+extern struct zclient           *qpim_zclient_lookup;
+extern struct pim_assert_metric  qpim_infinite_assert_metric;
+extern long                      qpim_rpf_cache_refresh_delay_msec;
+extern struct thread            *qpim_rpf_cache_refresher;
+extern int64_t                   qpim_rpf_cache_refresh_requests;
+extern int64_t                   qpim_rpf_cache_refresh_events;
+extern int64_t                   qpim_rpf_cache_refresh_last;
+extern struct in_addr            qpim_inaddr_any;
+extern struct list              *qpim_ssmpingd_list; /* list of struct ssmpingd_sock */
+extern struct in_addr            qpim_ssmpingd_group_addr;
+extern int64_t                   qpim_scan_oil_events;
+extern int64_t                   qpim_scan_oil_last;
+extern int64_t                   qpim_mroute_add_events;
+extern int64_t                   qpim_mroute_add_last;
+extern int64_t                   qpim_mroute_del_events;
+extern int64_t                   qpim_mroute_del_last;
+extern struct list              *qpim_static_route_list; /* list of routes added statically */
 
 #define PIM_JP_HOLDTIME (qpim_t_periodic * 7 / 2)
 
