-
I statically compiled stellarium in MSVC and got files with size greatly reduced. Using UPX can reduce more (60MB about, comparing with original unpacked Stellarium). |
Beta Was this translation helpful? Give feedback.
Replies: 7 comments 4 replies
-
If your changes are else compatible and optional, it may be worth adding them to CMake files and allow such compiles on private basis (with sufficient instructions!). But given these uncertainties, an official release may have to be checked by a lawyer. It may sound lazy, but given the prevailing trends around storage growth where all programs seem grow without limits and auto-update on a weekly basis (some particular SD card writer with minimal GUI: 150MB download?!) I would not deviate from the usual path of dynamical linking to pre-made DLLs unless there is a critical need to do so. You say by using static versions AND UPX, you reduce from about 400MB installed folder to 60MB? Or just the 70MB .exe+.dll to 60MB, and the 100MB of nebula textures remain untouched? (Maybe it would be more helpful to allow JPG textures?) What is the reduction without UPX? Maybe some users would also like to experiment with UPX, what is your observation with that: what has to be done to pack/unpack, any noticeable delay for unpacking? Can you send instructions to be included in the wiki or User Guide? It may be beneficial for compact systems with too tiny 64GB SSDs. |
Beta Was this translation helpful? Give feedback.
-
official: removing the assets(data, pics, translation etc.), left 70MB+ |
Beta Was this translation helpful? Give feedback.
-
OK. Well, a difference from 70 to 20MB (net effect: 400->350MB) may not really be worth the effort for most. But indeed, the package has become quite large in the last few years. Who really suffers from lack of disk space could profit from instructions what non-critical stuff to delete. (This may depend on personal needs and preferences, of course: translation files, nebula textures, skycultures, 3D models, ...) I would add a section to the user guide if you can provide it. Instructions for creation of a private static build would be welcome in the wiki or source/build directory. |
Beta Was this translation helpful? Give feedback.
-
To be honestly, comparing with some other astronomy software, stellarium with so rich functions should be bigger. (-: In fact, it is easy to compile a static version if you master the method of dynamic compilation. Maybe static buidling will take a lot of time to build a static library firstly, that is the key. I need to compare whether there is a difference, maybe the final result is just adding a sentence in the build guide that you can compile statically as simple as. |
Beta Was this translation helpful? Give feedback.
-
MSVC2019 static compile result: stellarium.exe 31.4MB copy it and SpoutLibrary.dll(This lib is out of compilation) into a folder with assets: Because exe will be loaded in ram, I don't feel obvious time delay on starting or running. |
Beta Was this translation helpful? Give feedback.
-
@ultrapre your solution is good for local experiments, but this is not acceptable for automatic creating a signed packages for distribution (we use AppVeyor for create a distribution packages + SignPath to signing of those packages) 😕 |
Beta Was this translation helpful? Give feedback.
-
@gzotti |
Beta Was this translation helpful? Give feedback.
If your changes are else compatible and optional, it may be worth adding them to CMake files and allow such compiles on private basis (with sufficient instructions!). But given these uncertainties, an official release may have to be checked by a lawyer. It may sound lazy, but given the prevailing trends around storage growth where all programs seem grow without limits and auto-update on a weekly basis (some particular SD card writer with minimal GUI: 150MB download?!) I would not deviate from the usual path of dynamical linking to pre-made DLLs unless there is a critical need to do so.
You say by using static versions AND UPX, you reduce from about 400MB installed folder to 60MB? Or just …