AIX: 程式是動態/靜態連結方式的判斷
阿新 • • 發佈:2018-11-28
http://blog.itpub.net/75231/viewspace-589289/
在AIX想了解一下一些檔案的庫連結方式,
動態(dynamic linked)還是靜態
(static linked), 使用file命令後,
輸出如下:
$ file /usr/bin/ksh
/usr/bin/ksh: executable (RISC System/6000) or object module
沒有發現太多的資訊,在網上問了一下,有人給出使用ldd進行判斷的方法.
做了個小測試.
$ cat abc.c
#include
int main(int argc, char **argv)
{
printf("\nHello world!\n");
exit(0);
}
a. 動態連結的方式
$ gcc abc.c -o abc
$ ./abc
Hello world!
$ ldd abc
abc needs:
/usr/lib/libc.a(shr.o)
/unix
/usr/lib/libcrypt.a(shr.o)
b. 靜態連結的方式
$ gcc -static abc.c -o abc
$ ./abc
Hello world!
$ ldd abc
abc needs:
/unix
$
果然有效,記錄一下,備忘.