The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Выпуск языка программирования Rust 1.60, opennews (??), 07-Апр-22, (0) [смотреть все] –1

Сообщения [Сортировка по времени | RSS]


64. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (-), 08-Апр-22, 01:27 
> Нет, выходные бинарники разгромные по размеру, а сборка ужасно медленная

А еще волосы на ладошках вырастут!


% rustc -O -C prefer-dynamic -C strip=symbols hello.rs && ll hello                
-rwxr-x---  1 аноним  аноним   6,4K  8 Apr. 07:26 hello

Ответить | Правка | Наверх | Cообщить модератору

73. "Выпуск языка программирования Rust 1.60"  –1 +/
Сообщение от Аноним (37), 08-Апр-22, 03:23 
Жырнота-то какая... это чтобы одну функцию вызвать?!
Ответить | Правка | Наверх | Cообщить модератору

76. "Выпуск языка программирования Rust 1.60"  –1 +/
Сообщение от Бывалый смузихлёб (?), 08-Апр-22, 05:18 
А сборка точно статическая, со всем необходимым растохламом под капотом ?

А то ведь прошивка под мк - штука такая. И места немного и памяти немного и полноценной оси где бы можно было раскидать те либы - тоже часто нет

Да и 6 кб для вывода фразы в консоль в отсутствие либ под капотом - это тоже очень много

В былые времена когда тестировал раст, статическая сборка хэллоуворда весила сотни килобайт и это при максимальных оптимизациях и вырезании всевозможного мусора. А как только требовалось что-то бОльшее вывода в консоль - сборка жирела в разы
Что.. едва ли похоже на «суперЯП без издержек»

Ответить | Правка | К родителю #64 | Наверх | Cообщить модератору

92. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (94), 08-Апр-22, 08:41 
> А сборка точно статическая, со всем необходимым растохламом под капотом ?

Glibc умеет в статическую сборку? Разве что musl.

Ответить | Правка | Наверх | Cообщить модератору

104. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (-), 08-Апр-22, 09:33 
Умеет, чего ему не?
Ответить | Правка | Наверх | Cообщить модератору

111. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (94), 08-Апр-22, 10:12 
Года два назад, вроде, прекратили поддержку статической сборки glibc.
Из-за лицензии и некоторых библиотек (libnss и тп).
Ответить | Правка | Наверх | Cообщить модератору

119. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (-), 08-Апр-22, 11:39 
> А сборка точно статическая, со всем необходимым растохламом под капотом ?

А ты давно собирал статический хелловрот с стандартной либой?


% gcc -static -O2  -s  helloc.c && ls -lh a.out
-rwxr-x---  1 анон  анон   566K  8 Apr. 12:34 a.out

> А то ведь прошивка под мк - штука такая. И места немного
> и памяти немного и полноценной оси где бы можно было раскидать
> те либы - тоже часто нет
> Да и 6 кб для вывода фразы в консоль в отсутствие либ
> под капотом - это тоже очень много

Стандартный бинарь под амд64, с pie и кучей секций по умолчанию-то? Не смеши мои тапки. Нолики выравнивания там, по большей части.

Idx Name          Size      VMA               LMA               File off  Algn
12 .text         000003c6  00000000002017b0  00000000002017b0  000007b0  2**4
                  CONTENTS, ALLOC, LOAD, READONLY, CODE
13 .init         00000013  0000000000201b78  0000000000201b78  00000b78  2**2

% rustc -O -C prefer-dynamic -C strip=symbols -C relocation-model=static -C opt-level=s hello.rs && ll hello
-rwxr-x---  1 анон  анон   5,6K  8 Apr. 12:34 hello*
% gcc -O2  -s helloc.c && ls -lh a.out
-rwxr-x---  1 анон  анон   4,8K  8 Apr. 12:34 a.out*

> В былые времена когда тестировал раст, статическая сборка хэллоуворда весила сотни килобайт

Плохо набрас^W тестировал.
https://www.opennet.ru/openforum/vsluhforumID3/124921.html#322
$ ll hello
-rwxr-x---   496B 30 Jul. 12:41 hello*

Ответить | Правка | К родителю #76 | Наверх | Cообщить модератору

170. "Выпуск языка программирования Rust 1.60"  –1 +/
Сообщение от Бывалый смузихлёб (?), 08-Апр-22, 15:42 
так сколько в итоге весит хеллоуворд со статической типизацией ?
ну так, к слову о микроконтроллерах..
Ответить | Правка | Наверх | Cообщить модератору

171. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Бывалый смузихлёб (?), 08-Апр-22, 15:44 
> типизацией

не типизацией разумеется

Ответить | Правка | Наверх | Cообщить модератору

172. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (-), 08-Апр-22, 15:52 
> так сколько в итоге весит хеллоуворд со статической типизацией ?
> ну так, к слову о микроконтроллерах..

Какие цифры в 496B тебе не понятны? B=Byte, если что.


RUSTFLAGS="-O  -C relocation-model=static -C strip=symbols -C linker=ld.bfd" cargo build --release && ll target/release/hello
    Finished release [optimized] target(s) in 0.03s
-rwxr-x---  2 анон  анон   504B  8 Apr. 15:52 target/release/hello*


Ответить | Правка | К родителю #170 | Наверх | Cообщить модератору

173. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Аноним (-), 08-Апр-22, 15:54 

 
% RUSTFLAGS="-O  -C relocation-model=static -C strip=symbols -C linker=ld.bfd" cargo build
--release && ll target/release/hello
     Finished release [optimized] target(s) in 0.03s
-rwxr-x---  2 анон  анон   504B  8 Apr.
15:52 target/release/hello*

% ldd target/release/hello ; target/release/hello                                
ldd: target/release/hello: not a dynamic ELF executable
Hello World


Ответить | Правка | Наверх | Cообщить модератору

181. "Выпуск языка программирования Rust 1.60"  +/
Сообщение от Бывалый смузихлёб (?), 08-Апр-22, 18:05 
> Какие цифры в 496B тебе не понятны? B=Byte, если что.
>
 
> RUSTFLAGS="-O  -C relocation-model=static -C strip=symbols -C linker=ld.bfd" cargo build
> --release && ll target/release/hello
>     Finished release [optimized] target(s) in 0.03s
> -rwxr-x---  2 анон  анон   504B  8 Apr.
> 15:52 target/release/hello*
>

Если итог статической столько - то уже весьма годно, да

Ответить | Правка | К родителю #172 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру