GeniusVentures / thirdparty

2 stars 2 forks source link

Examine why some lib release are so big #46

Closed Super-Genius closed 3 months ago

Super-Genius commented 5 months ago

rocksdb, is like 1.7G, and Boost is only 500m (header only).

But grpc-lib is a whopping 5.07GB on OSX and 9GB on Linux.

Somethings not right there. Maybe we are including the .obj files?

Super-Genius commented 5 months ago

Image

Rocksdb on Windows is huge and grpc is small.

On Linux Debug grpc is 1.5GB and on Windows Debug, its 1.9k?

Super-Genius commented 5 months ago

Yea Windows is missing everything in grpc-lib on Releases.

On Linux, it's including all the .o files and o.d files, it should mainly include header files and library files and skip docs, .o files and any non-required files for linking.

-rw-r--r-- 0 runner docker 1133864 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_context.cc.o -rw-r--r-- 0 runner docker 673664 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel.cc.o -rw-r--r-- 0 runner docker 28350 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel.cc.o.d -rw-r--r-- 0 runner docker 20417 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel_posix.cc.o.d -rw-r--r-- 0 runner docker 15092 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_stats_interceptor.cc.o.d -rw-r--r-- 0 runner docker 312344 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_stats_interceptor.cc.o -rw-r--r-- 0 runner docker 15080 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_interceptor.cc.o.d -rw-r--r-- 0 runner docker 583888 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel_posix.cc.o -rw-r--r-- 0 runner docker 19885 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel_internal.cc.o.d -rw-r--r-- 0 runner docker 518120 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/create_channel_internal.cc.o -rw-r--r-- 0 runner docker 28282 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/insecure_credentials.cc.o.d -rw-r--r-- 0 runner docker 702904 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/insecure_credentials.cc.o -rw-r--r-- 0 runner docker 50364 Apr 16 01:52 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_callback.cc.o.d -rw-r--r-- 0 runner docker 312464 Apr 16 01:53 grpc/bin/CMakeFiles/grpc++_unsecure.dir/src/cpp/client/client_interceptor.cc.o

EduMenges commented 3 months ago

New releases excludes these files. For Release builds, gRPC takes at most 46 MB on Windows, with a 22 MB average on other platforms.