GTK可移植性 - Linux库

时间:2015-06-18 08:09:27

标签: c linux gtk

我为公司项目编写了一个使用GTK的工具,但似乎整个GTK包或git大约250mb并且需要编译。

这不是一个可移植的解决方案,将250mb移动到一台机器上,只是为了编译然后摆脱库,那么我该如何让我的程序可移植呢?

*这不是一个重复的问题,我还没有在Linux上找到解决方案。

1 个答案:

答案 0 :(得分:0)

在问题评论部分中感谢gengisdave;解决方案是使用ldd。

在我的情况下:ldd / dir / blablah / program_name - 这产生了如下输出:

mikearmstrong@ubuntu:~/Desktop/linux_command_tool$ ldd ProntoCommandTool 
    linux-vdso.so.1 =>  (0x00007ffdb25f0000)
    libgtk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 (0x00007ffa4717f000)
    libgobject-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (0x00007ffa46f2e000)
    libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007ffa46c25000)
    libcups.so.2 => /usr/lib/x86_64-linux-gnu/libcups.so.2 (0x00007ffa469b1000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007ffa46793000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007ffa463cd000)
    libgdk-3.so.0 => /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 (0x00007ffa46126000)
    libgmodule-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 (0x00007ffa45f22000)
    libpangocairo-1.0.so.0 => /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 (0x00007ffa45d14000)
    libX11.so.6 => /usr/lib/x86_64-linux-gnu/libX11.so.6 (0x00007ffa459df000)

您可以看到每个库都在返回字符串中声明。