我为公司项目编写了一个使用GTK的工具,但似乎整个GTK包或git大约250mb并且需要编译。
这不是一个可移植的解决方案,将250mb移动到一台机器上,只是为了编译然后摆脱库,那么我该如何让我的程序可移植呢?
*这不是一个重复的问题,我还没有在Linux上找到解决方案。
答案 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)
您可以看到每个库都在返回字符串中声明。