LINUX.ORG.RU

Избранные сообщения d

Почему падает сборка без оптимизации?

Форум — Development

gcc 7.4 собирает пример с -O2 и ругается без оптимизации. gcc 4.8 собирает без ругани в обоих случаях. Где порылась собака и какое поведение правильное?

root@0d2ad7bc98a5:/build/src# cat a.c
#include <stdio.h>
inline void f(void)
{
        printf("wtf\n");
}
void g(void)
{
        f();
}
int main(void)
{
        f();
        return 0;
}
root@0d2ad7bc98a5:/build/src# gcc a.c
/tmp/ccOKVIbb.o: In function `g':
a.c:(.text+0x5): undefined reference to `f'
/tmp/ccOKVIbb.o: In function `main':
a.c:(.text+0x11): undefined reference to `f'
collect2: error: ld returned 1 exit status
root@0d2ad7bc98a5:/build/src# gcc a.c -O2
root@0d2ad7bc98a5:/build/src# gcc --version
gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Если убрать inline - сборка проходит. То, что компилятор к inline относится по-разному в зависимости от уровня оптимизации, я знаю. Но стулья ломать зачем?

 , ,

pinus_nigra
()

Полировка знаний о Си

Форум — Development

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

 

LancerRevX
()

А где нынче принято качать лосслесс?

Форум — Talks

Собственно, вопрос в заголовке.

Снова потихоньку собираю нормальную акустику вместо встроенных реалтеков и маленьких наушников. Соответственно, нужен качественный контент (с). Стриминговые сервисы:

а) почти все обладают так себе качеством
б) все зависят от интернета

Хочется снова собрать локальную коллекцию, как в старые добрые времена. Когда-то собранная коллекция с what.cd померла вместе с очередным хардом, поэтому приходится начинать с нуля.

Собственно, куда идти за музыкой? what.cd мёртв, waffles тоже, других не знаю.

 , ,

DoctorSinus
()

Красивые способы корректного сравнения знаковых и беззнаковых целых

Форум — Development

Стандарты языка С предписывают компиляторам пользовать «быстрое» сравнение, вместо корректного.

То есть в следующем коде согласно всех стандартов языка С переменная res должна получить значение 0 а не 1, что крайне непрактично.

unsigned int a = 1;
int b = -1;
int res = (b < a);

Недавно я узнал что существует заметно больше способов корректного сравнения чем я изначально предполагал. Поэтому мне интересен чужой опыт.

Естественно речь о ситуациях где отказаться ни от знаковых, ни от беззнаковых никак нельзя.

Мой основной способ решения этой проблемы через расширение разрядности, так как я в первую очередь имею дело с unsigned char, но смесь size_t c ssize_t или что-то подобное также нередко доставляет неудобства.

Опишите кто и как выкручивается в сложившейся ситуации.

[UPDATE] ассемблерные листинги к классическим алгоритмам сравнения

For example x86 gcc 7.1 will for C++ source:

bool compare(int x, unsigned int y) {
    return (x < y); // "wrong" (will emit warning)
}

bool compare2(int x, unsigned int y) {
    return (x < 0 || static_cast<unsigned int>(x) < y);
}

bool compare3(int x, unsigned int y) {
    return static_cast<long long>(x) < static_cast<long long>(y);
}

Produce this assembly (godbolt live demo):

compare(int, unsigned int):
        cmp     edi, esi
        setb    al
        ret

compare2(int, unsigned int):
        mov     edx, edi
        shr     edx, 31
        cmp     edi, esi
        setb    al
        or      eax, edx
        ret

compare3(int, unsigned int):
        movsx   rdi, edi
        mov     esi, esi
        cmp     rdi, rsi
        setl    al
        ret

Взято вот здесь:

https://stackoverflow.com/a/44070807/73747

 , ,

cvv
()

Отключение всех заплаток ядра разом (Meltdown, Spectre, L1TF, MDS)

Форум — Talks

Может кому интересно. В актуальные ядра (5.1.2, 5.0.16, 4.19.43, 4.14.119, 4.9.176) добавили параметр для отключения всех заплаток разом.

mitigations=off

Для тех, кто хочет выжать максимум производительности из своего железа.

 , , , ,

Kron4ek
()

Музыкальные торрент трекеры

Форум — Talks

Какие есть музыкальные трекеры? Или там где больший выбор музыки чем на rutracker, rutor, the pirate bay.

 , , ,

Riniko
()

Случилась беда с KRoN73

Новости — Linux.org.ru
Группа Linux.org.ru

KRoN73 RIP

Всё написанное ниже уже неактуально :(

Друзья. Под новогодние праздники (с 29 на 30) случилась ужасная беда со старейшим участником форума - KRoN73.

( Подробности... )

Я никогда не делал подобные обращения, поэтому не знаю, что писать и немного (на самом деле много) растерян.

( Как помочь... )

>>> Оригинальный тред

 ,

shell-script
()

Случилась беда с KRoN73 :(

Форум — Talks

KRoN73 RIP

Всё написанное ниже уже неактуально :(

Друзья. Под новогодние праздники (с 29 на 30) случилась ужасная беда со старейшим участником форума - KRoN73. Инсульт. Да не просто инсульт, а такой, что сейчас Рома в реанимации в Боткинской больнице в коме после трепанации. Позачера (2.01) его состояние изменилось с «нестабильно тяжёлый» на «стабильно тяжёлый», далее без динамики состояние на 04.01 - уменьшился отёк, пытается самостоятельно дышать, но пока без сознания. Разумеется, никто никаких прогнозов не даёт (если говорить прямо, даже на жизнь)

Весь ужас ситуации в том, что:

1) У него двое несовершеннолетних детей (дочь в младших классах и сын дошкольник), супруга - кандидат биологических наук (что означает доход чуть более, чем ничего) и недавно взятая ипотека ипотеку закрыли совсем недавно, cоответственно, Рома - главный кормилец в семье.

2) Рома не успел оставить доступ к своим счетам и картам получили доступ, там есть небольшая сумма.

Я никогда не делал подобные обращения, поэтому не знаю, что писать и немного (на самом деле много) растерян.

Ромина супруга Саида неохотно опубликовала в tg-группе номер своей банковской карточки Сбербанка (оттранслировано на форум Ромы) -

4276 8380 5742 5110
Саида Шамильевна Каршиева
Пожалуйста, в назначении/сообщении платежа (если есть такое поле) указывайте «на лечение» или «добровольное пожертвование на лечение»

иначе потом могут попытаться взять подоходный налог или заблокировать карту!

Если вдруг кто что-нибудь переведёт ей - буду навечно благодарен. Также могу выступить посредником между paypal (koptev@gmail.com) и супругой Ромы (разумеется, со всеми пруфами, если понадобится). Ни разу не принимал много платежей, наверное, стоит указывать в комментарии к платежу «Роману на лечение». опытные товарищи подсказывают, что ничего не надо писать в комментарии к paypal Звонил в банк, там посоветовали всё же в paypal указывать назначение платежа (например, «На лечение Романа Каршиева»), чтобы, в случае возникновения вопросов, предоставить распечатки инвойсов из интерфейса paypal.

Пожалуйста, давайте не будем в этой теме дискутировать о политике, национальности и вероисповедании.

 ,

Deleted
()

Переезд в США

Форум — Talks

Выполняю обещание, данное вот тут
Ищу работу: C++11, структуры данных, алгоритмы, сеть, lock-free, highload. (комментарий)

В этой теме готов ответить на вопросы о том, как программисту линуксоиду переехать жить в США. Сам уже 1.5 года как переехал.

Так же могу рассказать про сложности, которые могут возникнуть и как их лучше решить. Аренда, налоги, переезд, десткие сады и школы, жизнь в мультикультурном обществе, знание языка, что спрашивают на собеседованиях.

Написать большой пост сил так и не хватило, так что задавайте ваши вопросы.

P.S. Ответы в большинстве своем относятся к Калифорнии и конкретно Долине и ее окресностям. В других штатах все может быть немного по другому.

 , ,

trex6
()

Современная философия

Форум — Talks

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

А то как откроешь что-нибудь из XIX и ранее века - плакать хочется от этой бредотни (ну кроме Ницше, тот жжот на 5+). Из XX века я из «чистых» философов только Камю читал, отлично зашёл вообще, хоть науке и ортогонален.

Перемещено leave из science

 ,

Deleted
()

Музыка: возрождение классических инструментов в современной музыка

Форум — Talks

Привет

Фортепиано, скрипки, виолончели у меня всегда однозначно ассоциировались с Бахом, Бетховеном, Моцартом и другой классикой. Классика - это хорошо, пафосно, возвышенно. Но, иногда хочется чего-то менее нафталинистого.

Пошерстив по Youtube'ам с удивлением обнаружил, что классические инструменты могут звучать современно. Примеры ниже, но вопрос/просьба сразу:

Посоветуйте музыку, в которой бы классические инструменты - фортепиано, скрипка и т. п. - играли драйвово и современно.

Исполнение Metallica, Scorpions и т. п. в аранжировке с оркестром не предлагать: уж очень банально.

Вот примеры чего хочу.

2Cellos - уже, думаю, многие знают. Ребята очень современно играют на виолончелях. Например Mombasa - хороший пример современного стиля игры на классическом инструменте: во времена Моцарта и Баха так не играли. Highway To Hell - да, рок-классика, но звучит по-другому и классно: я бы поставил такое себе в плеер.

William Joseph офигительно играет Radioactive в даб-степовой аранжировке. Или вот еще классический Miserlou со скрипками как звучит: совсем по-другому в сравнении с оригиналом.

Lindsey Stirling - скрипка + дабстеп: Crystallize, Shadows

И открытие года - Darius Havasi - фортепиано + барабан. Это нужно просто видеть и слышать: Duel, Freedom, Prelude | Age of Heroes

Есть еще что-то подобное?

 ,

Kroz
()

minimodem: двухнаправленная передача данных

Форум — Admin

Такой вопрос, можно ли с помощью minimodem организовать двухнаправленную передачу данных? Мне это надо для передачи данных через звуковую карту.

 , , , ,

ne-vlezay
()

failed to start load kernel modules

Форум — Desktop

поставил virtualbox теперь при старте я получаю сообщение: failed to start load kernel modules

Помогите решить проблему

 ,

user141
()

Курс по компиляторам

Форум — Development

В 14-м году на курсере был классный курс, который я упустил. А сейчас понял что очень хочется его пройти. После гуглежа оказалось, что курс доступен бесплатно без смс прямо на сайте стенфорда.

Вот, выкладываю ссылку (может будет полезно кому-нибудь) https://lagunita.stanford.edu/courses/Engineering/Compilers/Fall2014/

Если есть ещё слоупоки кроме меня, то давайте вместе проходить!

 , ,

dsxl
()

Вечер срыва покровов о том, как душат микро бизнес в России

Форум — Talks

ИП со стажем 7 лет.
В т.ч. большой опыт работы с госзаказом.

Задавайте ваши вопросы (кому интересно). На все корректные отвечу.

АТО (с) очень много волос у меня выпадает, когда читаю перлы про микробизнес в России.

 

dk-
()

10 лет с Колибри: как это было

Новости — Open Source
Группа Open Source

Обзор от дизайнера и прикладного разработчика KolibriOS в честь 10-летия его участия в проекте.

>>> Читать обзор

 , , ,

Badboy
()

Средние и длинные тире

Форум — Desktop

Долго терпел костыль с копипастом, но надоело. Как белые люди в Линуксе вводят сабжевые символы, не прибегая к таблицам символов и буферу обмена? Нагуглил способ с клавишей Compose, в настройках Плазмы назначил эту клавишу на Капслок, но нажатие двух/трёх дефисов при зажатом Капслоке ни к чему не приводят.

ЧЯДНТ?

 , , ,

Deleted
()

Что такое тензор?

Форум — Development

Читал-читал... Тензор - он всё. Базовый «пакет» данных, к операциями над которым сводятся любые востребованные в области ML вычисления?

Вектор, матрица и даже скаляр - частные случаи тензора.

А можно как-то более простыми словами для дегенератов объяснить, что это такое и в чём абстрактная красота и универсальность понятия?

Недаром ведь «поток тензоров» - TensorFlow...

 

hlamotron
()

dwm кириллица

Форум — General

Есть ли возможность использовать шрифт Terminus в dwm что бы была поддержка кириллицы ? Ибо там уже xft.

 , ,

Linux_Joi
()

Подготовка к интервью на sre

Форум — Talks

ЛОР, буквально через три недели еду на онсайт интервью на sre. Как можно подготовиться? Что почитать?

Уже читаю SRE book, linux kernel development и cracking the coding interview.

Перемещено leave из development

 , ,

redvicka
()