dynamic link 이고
$ file * main: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=989d3d9b6419e9e16be59fe589ddda8c631c30f0, with debug_info, not stripped main.rs: C source, ASCII text |
링크 된걸 보면 c 프로그램과 별 차이가 없긴 한데
$ ldd main linux-vdso.so.1 (0x00007ffe605de000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007efd04cd8000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007efd04ad0000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007efd048b1000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007efd046ad000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007efd042bc000) /lib64/ld-linux-x86-64.so.2 (0x00007efd05142000) |
실행 파일 크기가 미친듯이 크다.
golang 처럼 rust 라이브러리 자체는 static으로 link 한건가?
$ ls -alh 합계 12M drwxrwxr-x 2 user user 4.0K 5월 11 10:06 . drwxrwxr-x 24 user user 4.0K 5월 11 10:05 .. -rwxrwxr-x 1 user user 12M 5월 11 10:06 main -rw-rw-r-- 1 user user 148 5월 11 10:06 main.rs |
'Programming > rust' 카테고리의 다른 글
rust was (0) | 2023.05.20 |
---|---|
c에서 rust 호출하기 (0) | 2023.05.11 |
rust if문 (0) | 2023.05.11 |
rust rustup doc (0) | 2023.05.10 |
rust cargo new를 통한 프로젝트 생성 (0) | 2023.05.09 |