编写C头文件

时间:2013-08-25 11:49:14

标签: c static-libraries header-files

我写过一些C课程作为我大学作业的一部分。在大型程序的情况下,我会将我的代码分发到各种文件中,我将其作为标题包含在主C文件中。 我想将我的代码重新分发给我的朋友,但不希望他们能够访问完整的代码并抄袭我的程序。 那么,我如何创建静态(或动态)链接头文件(使用* .so或其他东西)来隐藏我在头文件中的代码?

如果重要,我正在使用Linux。

感谢。 :)

1 个答案:

答案 0 :(得分:1)

假设您有.c.h文件,可以像这样编译它们,以便在.so下的linux中获取共享对象文件(gcc)。

gcc -c -fpic file.c

-fpic用于确保编译器生成与位置无关的代码。

然后将其分享,只需执行:

gcc -shared -o sharedfile.so file.o

要链接它,请使用:

gcc -L<path_to_library> -o testfile main.c -lsharedfile

-L<path_to_library>用于链接器在哪里找到我们的共享对象,-lsharedfile告诉它链接哪个对象。