--- a/include/ec_threads.h
+++ b/include/ec_threads.h
@@ -12,7 +12,7 @@
 };
 
 /* a value to be used to return errors in fuctcions using pthread_t values */
-pthread_t EC_PTHREAD_NULL;
+extern pthread_t EC_PTHREAD_NULL;
 #define EC_PTHREAD_SELF EC_PTHREAD_NULL
 #define PTHREAD_ID(id)  (*(unsigned long*)&(id)) 
 
--- a/src/ec_threads.c
+++ b/src/ec_threads.c
@@ -46,6 +46,8 @@
 #define INIT_LOCK     do{ DEBUG_MSG("thread_init_lock"); pthread_mutex_lock(&init_mtx); } while(0)
 #define INIT_UNLOCK   do{ DEBUG_MSG("thread_init_unlock"); pthread_mutex_unlock(&init_mtx); } while(0)
 
+pthread_t EC_PTHREAD_NULL;
+
 /* protos... */
 
 pthread_t ec_thread_detached(char *name, char *desc, void *(*function)(void *), void *args, int detached);
