标签: c unix shared-libraries shared
我在C中编写一个使用全局变量(日志文件结构)的应用程序。在我的应用程序中,我在运行时动态加载共享库,我想使用指向相同日志文件结构的全局变量来记录共享库。
这似乎不太可能采用简单的方法:
任何暗示如何解决这个问题都会很棒。
谢谢!
答案 0 :(得分:8)
您需要使用-rdynamic标记(例如:gcc -g -rdynamic -o main main.c)编译主应用程序,并使用extern在动态库中声明全局变量。
-rdynamic
gcc -g -rdynamic -o main main.c
extern