我需要在我的项目中包含一个.h文件,该文件将在运行时提供。由于.h文件在链接时链接,我无法包含.h文件。所以我决定写一个虚拟程序,它会创建.h文件然后我会调用我的实际程序。无论如何要做到这一点。或任何其他解决方案是可能的。我基本上需要在程序开始执行之前创建一个.h文件,并且需要将它链接到我的程序。
我实际上应该取一个由用户创建的文件,解析该文件,然后创建一个包含该文件中存在的字段的结构。例如,如果该文件包含以下数据: -
FNO:INT:4,FNAME:字符:30,FTYPE:INT:4
然后我应该创建一个像这样的结构
struct somename
{
int fno;
char fname[30];
int ftype
};
然后我应该能够创建创建的结构的实例。这就是我喜欢做的事情
答案 0 :(得分:3)
dlopen是一个解决方案。它允许在运行时加载动态库。
答案 1 :(得分:2)
你能做的是:
答案 2 :(得分:0)
我会使用Makefile
;你的程序会在运行时收到头文件(也许检查一下?)然后execve()
传递文件名的make
命令。
然而,这听起来非常麻烦;也许你正试图用错误的工具来实现某些目标。也许你想先使用一些脚本?或者写两个单独的程序..?你想做什么?