我对开源和许可证的基本理解存在问题。请有人能否澄清下面情况的一些问题。如果这些问题太基础了,请原谅。
我正在编写专有软件,其中计划使用一些开源库。我还需要glibc和C编译器,但不想使用操作系统中的默认gcc工具链,因此使用crosstools-ng构建了自己的工具链。
现在,在ct-ng中,我猜测libstdc++库会被静态链接(这是用于c++的,我认为在大多数情况下不会使用它),但是根据我的工具链配置,我的libc是否是静态链接还是动态链接?如果是这种情况,考虑到glibc是LGPL,并且我可以将其链接到我的专有软件中,这种静态链接是否会对我的许可证造成任何问题?我的软件仍然可以闭源吗?还是必须释放已编译的对象?
我的工具链配置如下,从中能否指出glibc是静态链接还是动态链接?
Target: x86_64-some-linux-gnu
Configured with: /home/balravin/tools/platform/x86/src/gnu/gcc/4.4.7/.build/src/gcc-4.4.7/configure --build=i686-build_pc-linux-gnu --host=i686-build_pc-linux-gnu --target=x86_64-some-linux-gnu --prefix=/home/balravin/tools/platform/x86/obj/gnu/gcc/4.4.7/x86_64-some-linux-gnu --with-sysroot=/home/balravin/tools/platform/x86/obj/gnu/gcc/4.4.7/x86_64-some-linux-gnu/x86_64-some-linux-gnu/sysroot --enable-languages=c,c++,fortran --with-pkgversion='crosstool-NG 1.15.3' --disable-sjlj-exceptions --enable-__cxa_atexit --enable-libmudflap --enable-libgomp --enable-libssp --with-gmp=/home/balravin/tools/platform/x86/src/gnu/gcc/4.4.7/.build/x86_64-some-linux-gnu/buildtools --with-mpfr=/home/balravin/tools/platform/x86/src/gnu/gcc/4.4.7/.build/x86_64-some-linux-gnu/buildtools --with-ppl=/home/balravin/tools/platform/x86/src/gnu/gcc/4.4.7/.build/x86_64-some-linux-gnu/buildtools --with-cloog=/home/balravin/tools/platform/x86/src/gnu/gcc/4.4.7/.build/x86_64-some-linux-gnu/buildtools --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --enable-threads=posix --enable-target-optspace --with-long-double-128 --disable-multilib --with-local-prefix=/home/balravin/tools/platform/x86/obj/gnu/gcc/4.4.7/x86_64-some-linux-gnu/x86_64-some-linux-gnu/sysroot --enable-c99 --enable-long-long
Thread model: posix
gcc version 4.4.7 (crosstool-NG 1.15.3)