Duplicate of aws-samples/aws-iot-securetunneling-localproxy#223
Hello,
We have noticed that the binary size and linked libraries are very different between docker version and the yocto build. We build it using the official and latest yocto recipe. The docker version is around 14 MB (amd64) and our yocto version is around 3 MB (arm64). Also please note the linked libraries. Do you know if this is expected?
Docker version:
ldd localproxy
linux-vdso.so.1 (0x00007ffd191b5000)
libstdc++.so.6 => /lib/x86_64-linux-gnu/libstdc++.so.6 (0x000077e2c9400000)
libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x000077e2c97d2000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000077e2c9000000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x000077e2c96e9000)
/lib64/ld-linux-x86-64.so.2 (0x000077e2ca105000)
Yocto version:
ldd /usr/bin/localproxy
ldd: linux-vdso.so.1 (0x0000007f93de2000)
libssl.so.3 => /usr/lib/libssl.so.3 (0x0000007f93a20000)
libcrypto.so.3 => /usr/lib/libcrypto.so.3 (0x0000007f93574000)
libboost_program_options.so.1.90.0 => /usr/lib/libboost_program_options.so.1.90.0 (0x0000007f9350d000)
libprotobuf-lite.so.33.6.0 => /usr/lib/libprotobuf-lite.so.33.6.0 (0x0000007f93439000)
libboost_log.so.1.90.0 => /usr/lib/libboost_log.so.1.90.0 (0x0000007f93364000)
libboost_thread.so.1.90.0 => /usr/lib/libboost_thread.so.1.90.0 (0x0000007f93345000)
libboost_filesystem.so.1.90.0 => /usr/lib/libboost_filesystem.so.1.90.0 (0x0000007f9331d000)
libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0000007f930d0000)
libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x0000007f930b0000)
libc.so.6 => /usr/lib/libc.so.6 (0x0000007f92f11000)
/usr/lib/ld-linux-aarch64.so.1 (0x0000007f93de3000)
libabsl_log_internal_check_op.so.2601.0.0 => /usr/lib/libabsl_log_internal_check_op.so.2601.0.0 (0x0000007f92f0a000)
libabsl_log_internal_message.so.2601.0.0 => /usr/lib/libabsl_log_internal_message.so.2601.0.0 (0x0000007f92efc000)
libutf8_validity.so.33.6.0 => /usr/lib/libutf8_validity.so.33.6.0 (0x0000007f92ef7000)
libabsl_log_internal_nullguard.so.2601.0.0 => /usr/lib/libabsl_log_internal_nullguard.so.2601.0.0 (0x0000007f92ef4000)
libabsl_raw_hash_set.so.2601.0.0 => /usr/lib/libabsl_raw_hash_set.so.2601.0.0 (0x0000007f92ee3000)
libabsl_status.so.2601.0.0 => /usr/lib/libabsl_status.so.2601.0.0 (0x0000007f92ed8000)
libabsl_cord.so.2601.0.0 => /usr/lib/libabsl_cord.so.2601.0.0 (0x0000007f92ebb000)
libabsl_cordz_info.so.2601.0.0 => /usr/lib/libabsl_cordz_info.so.2601.0.0 (0x0000007f92eb2000)
libabsl_cord_internal.so.2601.0.0 => /usr/lib/libabsl_cord_internal.so.2601.0.0 (0x0000007f92e9f000)
libabsl_synchronization.so.2601.0.0 => /usr/lib/libabsl_synchronization.so.2601.0.0 (0x0000007f92e8b000)
libabsl_hash.so.2601.0.0 => /usr/lib/libabsl_hash.so.2601.0.0 (0x0000007f92e88000)
libabsl_str_format_internal.so.2601.0.0 => /usr/lib/libabsl_str_format_internal.so.2601.0.0 (0x0000007f92e6c000)
libabsl_strings.so.2601.0.0 => /usr/lib/libabsl_strings.so.2601.0.0 (0x0000007f92e48000)
libabsl_throw_delegate.so.2601.0.0 => /usr/lib/libabsl_throw_delegate.so.2601.0.0 (0x0000007f92e43000)
libabsl_raw_logging_internal.so.2601.0.0 => /usr/lib/libabsl_raw_logging_internal.so.2601.0.0 (0x0000007f92e3f000)
libm.so.6 => /usr/lib/libm.so.6 (0x0000007f92d97000)
libabsl_leak_check.so.2601.0.0 => /usr/lib/libabsl_leak_check.so.2601.0.0 (0x0000007f92d94000)
libabsl_examine_stack.so.2601.0.0 => /usr/lib/libabsl_examine_stack.so.2601.0.0 (0x0000007f92d8e000)
libabsl_log_internal_format.so.2601.0.0 => /usr/lib/libabsl_log_internal_format.so.2601.0.0 (0x0000007f92d8a000)
libabsl_log_internal_structured_proto.so.2601.0.0 => /usr/lib/libabsl_log_internal_structured_proto.so.2601.0.0 (0x0000007f92d87000)
libabsl_strerror.so.2601.0.0 => /usr/lib/libabsl_strerror.so.2601.0.0 (0x0000007f92d83000)
libabsl_log_internal_log_sink_set.so.2601.0.0 => /usr/lib/libabsl_log_internal_log_sink_set.so.2601.0.0 (0x0000007f92d7e000)
libabsl_log_internal_globals.so.2601.0.0 => /usr/lib/libabsl_log_internal_globals.so.2601.0.0 (0x0000007f92d78000)
libabsl_log_globals.so.2601.0.0 => /usr/lib/libabsl_log_globals.so.2601.0.0 (0x0000007f92d73000)
libabsl_log_internal_proto.so.2601.0.0 => /usr/lib/libabsl_log_internal_proto.so.2601.0.0 (0x0000007f92d6f000)
libabsl_time.so.2601.0.0 => /usr/lib/libabsl_time.so.2601.0.0 (0x0000007f92d5e000)
libabsl_strings_internal.so.2601.0.0 => /usr/lib/libabsl_strings_internal.so.2601.0.0 (0x0000007f92d59000)
libabsl_base.so.2601.0.0 => /usr/lib/libabsl_base.so.2601.0.0 (0x0000007f92d51000)
libabsl_hashtablez_sampler.so.2601.0.0 => /usr/lib/libabsl_hashtablez_sampler.so.2601.0.0 (0x0000007f92d4c000)
libabsl_crc_cord_state.so.2601.0.0 => /usr/lib/libabsl_crc_cord_state.so.2601.0.0 (0x0000007f92d45000)
libabsl_cordz_functions.so.2601.0.0 => /usr/lib/libabsl_cordz_functions.so.2601.0.0 (0x0000007f92d42000)
libabsl_cordz_handle.so.2601.0.0 => /usr/lib/libabsl_cordz_handle.so.2601.0.0 (0x0000007f92d3d000)
libabsl_stacktrace.so.2601.0.0 => /usr/lib/libabsl_stacktrace.so.2601.0.0 (0x0000007f92d36000)
libabsl_graphcycles_internal.so.2601.0.0 => /usr/lib/libabsl_graphcycles_internal.so.2601.0.0 (0x0000007f92d2f000)
libabsl_kernel_timeout_internal.so.2601.0.0 => /usr/lib/libabsl_kernel_timeout_internal.so.2601.0.0 (0x0000007f92d2b000)
libabsl_symbolize.so.2601.0.0 => /usr/lib/libabsl_symbolize.so.2601.0.0 (0x0000007f92d23000)
libabsl_tracing_internal.so.2601.0.0 => /usr/lib/libabsl_tracing_internal.so.2601.0.0 (0x0000007f92d20000)
libabsl_malloc_internal.so.2601.0.0 => /usr/lib/libabsl_malloc_internal.so.2601.0.0 (0x0000007f92d18000)
libabsl_spinlock_wait.so.2601.0.0 => /usr/lib/libabsl_spinlock_wait.so.2601.0.0 (0x0000007f92d15000)
libabsl_int128.so.2601.0.0 => /usr/lib/libabsl_int128.so.2601.0.0 (0x0000007f92d0f000)
libabsl_log_sink.so.2601.0.0 => /usr/lib/libabsl_log_sink.so.2601.0.0 (0x0000007f92d0c000)
libabsl_time_zone.so.2601.0.0 => /usr/lib/libabsl_time_zone.so.2601.0.0 (0x0000007f92cf1000)
libabsl_crc32c.so.2601.0.0 => /usr/lib/libabsl_crc32c.so.2601.0.0 (0x0000007f92cec000)
libabsl_exponential_biased.so.2601.0.0 => /usr/lib/libabsl_exponential_biased.so.2601.0.0 (0x0000007f92ce9000)
libabsl_borrowed_fixup_buffer.so.2601.0.0 => /usr/lib/libabsl_borrowed_fixup_buffer.so.2601.0.0 (0x0000007f92ccd000)
libabsl_debugging_internal.so.2601.0.0 => /usr/lib/libabsl_debugging_internal.so.2601.0.0 (0x0000007f92cc7000)
libabsl_demangle_internal.so.2601.0.0 => /usr/lib/libabsl_demangle_internal.so.2601.0.0 (0x0000007f92cb8000)
libabsl_crc_internal.so.2601.0.0 => /usr/lib/libabsl_crc_internal.so.2601.0.0 (0x0000007f92cb3000)
libabsl_demangle_rust.so.2601.0.0 => /usr/lib/libabsl_demangle_rust.so.2601.0.0 (0x0000007f92cad000)
libabsl_decode_rust_punycode.so.2601.0.0 => /usr/lib/libabsl_decode_rust_punycode.so.2601.0.0 (0x0000007f92caa000)
libabsl_utf8_for_code_point.so.2601.0.0 => /usr/lib/libabsl_utf8_for_code_point.so.2601.0.0 (0x0000007f92ca5000)
Duplicate of aws-samples/aws-iot-securetunneling-localproxy#223
Hello,
We have noticed that the binary size and linked libraries are very different between docker version and the yocto build. We build it using the official and latest yocto recipe. The docker version is around 14 MB (amd64) and our yocto version is around 3 MB (arm64). Also please note the linked libraries. Do you know if this is expected?
Docker version:
Yocto version: