Здравстуйте. Есть необходимость собрать проект весом не более 1 мб, но 1 класс в проекте весит около 13мб. Так вот, что я могу сделать, что бы exe у меня был весом не более 1 мб?
CLion 2017.3, msys64/mingw32, w64 5.0, тестовый проект с одним классом:
#include <iostream>
class Foo {
public:
void bar() {
std::cout << "bar\n";
}
};
int main() {
Foo foo;
foo.bar();
return 0;
}
После сборки на выходе получаем исполняемый файл размером 379кб.
Добавляем (в CMakeLists.txt) флажок компилятора -s
(убирает символы из исполняемого файла, отлаживать станет проблематично):
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -s")
После сборки получаем исполняемый файл размером 17кб.
Упаковываем полученный exe с помощью UPX:
upx.exe foo.exe
Получаем исполняемый файл размером всего 9кб.
Дополнительно можно задать компилятору ключ оптимизации по размеру: -Os
, но для этого простого примера разница была несущественной.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Подскажите, можно ли через WinApi определить кодировку переданной строки char* ? Мне нужно по переданной строке сравнивать является и она Utf8 или...
Возможно ли вообще использовать эту библиотеку на mac и как это сделать?
Возник вопрос по SDL2нужно сделать так чтобы картинку я мог вставить по 4 координатам(для того чтобы растягивать изменять пропорциию картинки...
Есть QLineEdit, в которое нужно вводить только вещественные значения(например, maxAccelerationValue)