169 похожих чатов

Всем привет! А можете подсказать про компиляцию и деплой? Вот я

написал маленький простой скрипт, который читает конфиг и делает в сеть пару запросов по апи. Скомпилировал экзешник. И понадеялся, что сейчас scp его на VPS и все будет там работать. Но у меня убунту 20, на сервере 16, в результате я получил просто несколько ошибок о несовместимости версий libc.
Тогда я устанивил там на VPS stack, запуллил репу и скомпилировал на месте. Пришлось увеличивать swap при этом, потому что 2 GB оперативки сервера не хватило, чтобы установить все библиотеки.

Вчера посмотрел какой-то ток Сноймана, где он рассказывал, как они деплоят. Там были с его стороны те же жалобы и всё свелось к докеру. Говорит, что тупо, конечно 3GB докер делать ради скриптика, но "оно работает и нам достаточно".

Я было уже смирился, что придется либо компилировать на сервере всё, либо возиться с докером, типа такова жизнь.

Но, вот, я увидел сейчас репу kowainik/hit-on — и там лежит скомпилированная кли-тулза hit-linux, которую я могу скачать и запустить у себя. То есть я, получается, могу просто экзешник у себя сделать и закачать. Но как?

5 ответов

5 просмотров

Подозреваю, что в скомпилированной утилите совпадают требуемые версии библиотек с вашими. На сервере её можно запустить?

Ilia-Zemskov Автор вопроса
Мансур Зиятдинов
Подозреваю, что в скомпилированной утилите совпада...

Вы про hit-on? Я не знаю, я еще нигде не пробовал ее запускать. Просто вижу, что они так ее распространяют: https://github.com/kowainik/hit-on/releases — один бинарник для любого линукса, предполагается, что оно должно работать :) Буду дома, попробую.

glibc старается сохранять обратную совместимость, потому скомпилировав со старой версией при отсутствии разногласий по версиям других зависимостей должно работать

Если ничего динамически не линкуется, что может разойтись по версиям, то должно работать. Есть ещё вариант статической линковки с MUSL, чтобы исключить зависимость от libc вообще.

Ilia-Zemskov Автор вопроса

Похожие вопросы

Обсуждают сегодня

А чем вам питонисты не угодили?😂
.
79
Язык Си можно выучить за день? По книжке ANSI C на 230 страниц
Vincent Vegan
29
Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
32
Dim Dim, [02.07.2024 11:07] DB 0x62 Dim Dim, [02.07.2024 11:07] DB 0x66 Dim Dim, [02.07.2024 11:07] кто пояснит что это?
Dim Dim
14
Ошибка: segmentation fault (core dumped) Код: pastebin.com/BEsNNSSV Сообщение от компилятора: отсутствует ОС: Arch Linux Ядро: x86_64 Linux 6.9.7-arch1-1 Процессор: Intel Cele...
sec
4
Ещё такой вопрос. Мне необходимо хранить пароль пользователя локально. Для этого планирую использовать ini файл. Это для автозаполнения полей логин и пароль при авторизации. Е...
Евгений
19
Ребят, а за скок можно впарить анон чат с апишкой и веб админкой ?
Eugene Неелов
15
Кстати, я тут еще с одной темой столкнулся, вот учу я C++, на таком то ресурсе, а остальные постоянно советуют практиковаться, что то писать, проекты, но как писать если вот т...
aaswq1
7
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Карта сайта