侧边栏

ubantu下tree的安装移植到arm开发板上

arm开发板没有tree,所以想装一个

下载源代码tree:https://gitlab.com/OldManProgrammer/unix-tree/-/commits/master/

 本地上传的源代码tree(和上面的一致):https://files.cnblogs.com/files/luckyleon/unix-tree-84fa3ddff51b30835a0f9c4a9e4c9225970f9aff.tar.gz?t=1710648250&download=true

解压到文件夹 

tar -zxvf   unix-tree-84fa3ddff51b30835a0f9c4a9e4c9225970f9aff.tar.gz    ~/my_tree

查看Makefile文件,

  执行命令make,unix-tree-84fa3ddff51b30835a0f9c4a9e4c9225970f9aff多了.o文件和tree可执行文件

之后执行make install,~/my_tree多了tree和tree.1

   v

根据输出, tree 可执行文件是一个静态链接的二进制文件,它不依赖于动态链接库。因此,在移动 tree 可执行文件到其他系统时,只需要复制 tree 可执行文件本身到/usr/bin,而不需要考虑其他依赖文件。(ldd 命令会显示出 tree 可执行文件依赖的动态链接库。)

Linux下动态库和静态库的区别:

静态库(.a):程序在编译链接的时候把库的代码“链接(拷贝)”到可执行文件中。程序运行的时候就不再需要静态库了!

动态库(.so):程序在运行的时候才去链接动态库的代码,多个程序共享使用动态库的代码

可执行程序只会缺少动态库文件,不会缺少静态库文件!!!!!!!!!

posted @ 2024-03-17 12:38  LeonVK  阅读(32)  评论(0)    收藏  举报