Fix GCC 4.7 errors

GCC 4.7.2 fail overriding constructors defined with virtual and default.
Debian build also fails linking  without -lrt.
INT64_C is not defined on Debian with 4.7.2. "ll" should be enough.

Change-Id: Ia779f094ed64fc3b1941429485e81520d017c2f5
Reviewed-on: https://weave-review.googlesource.com/1671
Reviewed-by: Alex Vakulenko <avakulenko@google.com>
diff --git a/src/backoff_entry.h b/src/backoff_entry.h
index 2df0d8a..002fb8d 100644
--- a/src/backoff_entry.h
+++ b/src/backoff_entry.h
@@ -57,7 +57,7 @@
   // Lifetime of policy must enclose lifetime of BackoffEntry. The
   // pointer must be valid but is not dereferenced during construction.
   explicit BackoffEntry(const Policy* const policy);
-  virtual ~BackoffEntry() = default;
+  virtual ~BackoffEntry() {}
 
   // Inform this item that a request for the network resource it is
   // tracking was made, and whether it failed or succeeded.
diff --git a/src/commands/cloud_command_update_interface.h b/src/commands/cloud_command_update_interface.h
index 9538960..ed3aa7a 100644
--- a/src/commands/cloud_command_update_interface.h
+++ b/src/commands/cloud_command_update_interface.h
@@ -21,7 +21,7 @@
                              const DoneCallback& callback) = 0;
 
  protected:
-  virtual ~CloudCommandUpdateInterface() = default;
+  virtual ~CloudCommandUpdateInterface() {}
 };
 
 }  // namespace weave
diff --git a/src/commands/command_instance.h b/src/commands/command_instance.h
index 60620a1..32a93a9 100644
--- a/src/commands/command_instance.h
+++ b/src/commands/command_instance.h
@@ -37,7 +37,7 @@
     virtual void OnStateChanged() = 0;
 
    protected:
-    virtual ~Observer() = default;
+    virtual ~Observer() {}
   };
 
   // Construct a command instance given the full command |name| which must
diff --git a/src/notification/notification_channel.h b/src/notification/notification_channel.h
index 5fb7993..ef152a8 100644
--- a/src/notification/notification_channel.h
+++ b/src/notification/notification_channel.h
@@ -17,7 +17,7 @@
 
 class NotificationChannel {
  public:
-  virtual ~NotificationChannel() = default;
+  virtual ~NotificationChannel() {}
 
   virtual std::string GetName() const = 0;
   virtual bool IsConnected() const = 0;
diff --git a/src/notification/notification_delegate.h b/src/notification/notification_delegate.h
index 719d76d..263c2f3 100644
--- a/src/notification/notification_delegate.h
+++ b/src/notification/notification_delegate.h
@@ -24,7 +24,7 @@
   virtual void OnDeviceDeleted(const std::string& cloud_id) = 0;
 
  protected:
-  virtual ~NotificationDelegate() = default;
+  virtual ~NotificationDelegate() {}
 };
 
 }  // namespace weave
diff --git a/src/notification/xmpp_channel.h b/src/notification/xmpp_channel.h
index e6185d9..50e84d2 100644
--- a/src/notification/xmpp_channel.h
+++ b/src/notification/xmpp_channel.h
@@ -33,7 +33,7 @@
   virtual void SendMessage(const std::string& message) = 0;
 
  protected:
-  virtual ~XmppChannelInterface() = default;
+  virtual ~XmppChannelInterface() {}
 };
 
 class XmppChannel : public NotificationChannel,
diff --git a/src/notification/xmpp_stream_parser.h b/src/notification/xmpp_stream_parser.h
index 41faaff..b8f5723 100644
--- a/src/notification/xmpp_stream_parser.h
+++ b/src/notification/xmpp_stream_parser.h
@@ -49,7 +49,7 @@
     virtual void OnStanza(std::unique_ptr<XmlNode> stanza) = 0;
 
    protected:
-    virtual ~Delegate() = default;
+    virtual ~Delegate() {}
   };
 
   explicit XmppStreamParser(Delegate* delegate);
diff --git a/src/privet/cloud_delegate.h b/src/privet/cloud_delegate.h
index 8763fbe..6396519 100644
--- a/src/privet/cloud_delegate.h
+++ b/src/privet/cloud_delegate.h
@@ -45,7 +45,7 @@
 
   class Observer {
    public:
-    virtual ~Observer() = default;
+    virtual ~Observer() {}
 
     virtual void OnDeviceInfoChanged() {}
     virtual void OnCommandDefsChanged() {}
diff --git a/src/privet/security_delegate.h b/src/privet/security_delegate.h
index 1d28ba3..40f297f 100644
--- a/src/privet/security_delegate.h
+++ b/src/privet/security_delegate.h
@@ -19,7 +19,7 @@
 // Interface to provide Security related logic for |PrivetHandler|.
 class SecurityDelegate {
  public:
-  virtual ~SecurityDelegate() = default;
+  virtual ~SecurityDelegate() {}
 
   // Creates access token for the given scope, user id and |time|.
   virtual std::string CreateAccessToken(const UserInfo& user_info,
diff --git a/src/privet/security_manager.h b/src/privet/security_manager.h
index c99201b..bb513e6 100644
--- a/src/privet/security_manager.h
+++ b/src/privet/security_manager.h
@@ -41,7 +41,7 @@
 
   class KeyExchanger {
    public:
-    virtual ~KeyExchanger() = default;
+    virtual ~KeyExchanger() {}
 
     virtual const std::string& GetMessage() = 0;
     virtual bool ProcessMessage(const std::string& message,
diff --git a/src/privet/wifi_delegate.h b/src/privet/wifi_delegate.h
index ae5e520..9bd5157 100644
--- a/src/privet/wifi_delegate.h
+++ b/src/privet/wifi_delegate.h
@@ -18,7 +18,7 @@
 class WifiDelegate {
  public:
   WifiDelegate() = default;
-  virtual ~WifiDelegate() = default;
+  virtual ~WifiDelegate() {}
 
   // Returns status of the WiFi connection.
   virtual const ConnectionState& GetConnectionState() const = 0;