LINUX.ORG.RU

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

Расширенная отладка кода в gcc

Форум — Development

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

Пользуюсь Valgrind (он же и профилировать позволяет очень точно, не статистически), помогает многое находить по памяти, но хочется еще больше каких-то проверок насыпать. Код очень важный, но тестированием покрыть будет сложно. А вот отловить сбои в процессе работы на тестовых данных - это реально.

 , ,

I-Love-Microsoft
()

Что почитать по ООП?

Форум — Development

1. Есть несколько книг на выбор. Нужно определить какую книгу стоит прочитать первой, а какие позже. Главные критерии для упорядочивания: «фундаментальность» касательно ООП, практичность и доступность (грамотность) в изложении материала.

Вот список:

  1. Философия Java // Б.Эккель
  2. ЯП C++ // Б.Страуструп
  3. ООП с ANSI-C // А.Шрайнер
  4. Типы в ЯП // Б.Пирс

2. Посоветуйте лучший, по вашему мнению, учебный материал по паттернам проектирования (статьи, книги, видео, что угодно).

 , , , ,

Edward_I
()

Lenovo ThinkPad EDGE E480 (20KN005CRT) совместимость с linux

Форум — Linux-hardware

Дружит ли Lenovo ThinkPad EDGE E480 (20KN005CRT) с linux? Есть ли косяки с драйверами?

 ,

King_Carlo
()

Android разработка без android studio.

Форум — Development

Есть опыт лет 15 в C++, под Android пытался лениво начать кодить пару раз, первый раз убила конски развесистая и тяжёлая IDE, где всё это предлагалось сделать. Второй раз убило то же самое - IDE стала ещё более конская и тяжёлая. Я фалломорфирую с того факта, что для простого белого окна с одной кнопкой мне надо видеть 100500 каких-то файлов в иерархии проекта, кучу кнопок в этой студии, запускать какую-то жирную систему сборки с .xml файлами т.п.

Не понимаю как можно начать с чего-то не базового. Такой подход, типа качните нашу IDE под 700 метров, запустите, он отожрёт пару гигов озу, создайте проект и т.п. - какая-то жопа, а не базовость. Базовое - это когда тебе дают голимый notepad, ты пишешь код, потом пишешь Makefile из 4 строк, запускаешь make и получаешь свою софтину. Далее накручиваешь. К IDE приходишь, когда понимаешь что накрутил так дохера, что уже тяжело через vim + mc на всё это смотреть, например.

В общем, хочется какого-то мануала/книги, где подразумевается, что ты можешь создать легитимное android-приложение из минимума говна и палок. Например имея только vim, adb, ещё там что-нибудь относительно редко меняющееся, желательно без всяких gradle систем сборки, а просто запуская java из консоли. И получая легальный современный нормальный .apk, который google play market не забанит ни за что.

Нахрена мне такое надо? А иначе основ не понять. Я бы хотел понимать что там в самых низах (ясно, что низами называется что-то вроде функции main в java, линковалки ресурсов и т.е., пакователя .apk файлов, Manifest.xml и т.п.). Т.е., чтобы, например, я смог собрать android-приложение, которое минимальное по размеру для данного функционала. Т.е. чтобы в него не было включено 100500 каких-то левых метафайлов, дескрипторов самой студии, всяких лицензий, копирайтов, ресурсов сотен иконок разного размера, прочей дефолтной ботвы. Мне не надо потребления лишних 4 КБ в .apk на то, что там для соблюдения этикета лежит какая-нибудь портянка про то, что это собрано такой-то, мать её, студией. И чтобы, скажем, я должен был руками всё это где-то прописывать, на каждом шагу огребая что чего-то не хватает и мог, разбираясь, понять нафига нужен каждый мелкий элемент процедуры.

Т.е. в идеале, среда разработки отсутствует, а есть набор файлов и утилит, а я пишу .sh - скрипты для оркестрации всех говен для получения легального .apk файла.

 

hlamotron
()

Android-разработка минимальными средствами без Android Studio.

Форум — Development

Вот для C или С++ есть минимум:
1) любая IDE от vim до CLion
2) make/cmake/gcc/g++
3) ПРОФИТ

То есть, я могу руками в vim написать Makefile, написать несколько .cpp файлов и одной командой make получать результат.

Причём так можно сделать даже гуй: берём Qt, пишем положения каждой кнопочки руками чиселками, возможно что-то в каких-нибудь там XML форматах, что тоже делается руками в vim, потом так же в vim можно сочинить примитивный файл .qrc всё ништяк. Мне не нужно для этого иметь QTCreator и фигачить окошки в конструкторах окошек.

В общем, хочется понимания такого же пути для ведроида.

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

Пару раз пробовал создавать хеллоу-ворлды в Android Studio. Это выглядело как пахание шести соток взводом межгалактических станций. Откуда в проекте овердохера каких-то файликов, папочек, иксэмелек и прочего говнища? Нахрен мне тыкать в эти окошечки, почему нельзя поменять какой-то XML файлик руками по понятному стандарту? Да-да, Manifest.xml я видел, но нахрена нужны остальные овер9000 файликов? Где среди них java код с моим main? Короче, проще застрелиться, какая-то жесть для дебилов. Мне не надо дизаен, я не хочу красиво, мне надо минимум байтов и производительность.

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

В идеале хочется менять в .vim какой-нибудь комплект .java файликов, что-то править в каких-то XML там же в vim, что-то запускать в консоли и видеть результирующий APK.

 

hlamotron
()

На каком тулките писать, чтобы удовлетворить тулкитофобов?

Форум — Development

Хочется писать простые графические приложения, типа блокнотика, плеера, распаковщика какого-то там хитрого формата и тд, не требующие каких-то особо хитрых виджетов, то какой лучше всего тулкит использовать?

Понятно, что Gtk и Qt не подходят, так как весят просто неприлично много, а приложение предполагается маленьким и быстрым.

Кроме того, хотелось бы возможности легко портировать приложение и в альтернативные ОС, и чтобы оно и там весило не больше мегабайта-двух со всеми зависимостями.

Xlib не подходит, так как выглядит как-то совсем уж страшненько, и опять же, работает на слишком примитивных примитивах.

Нужно чтобы были стандартные виджеты: button, checkbox, radio button, text input, text area, которые есть везде (включая даже HTML form) и чтобы при компиляции для Шиндошс или OS X они выглядели нативно. Какие-то другие виджеты не нужны, особенно при наличии канваса, где их можно рисовать самому, если вдруг стандартных мало.

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

 , , ,

Xenius
()

Одноплатник для олдовых консолей

Форум — Linux-hardware

Всем привет, задумал поиграть в старые игры с соответствующуей системой заточенной только на игры (управление джойстиком, интерфейс, встроенные эмуляторы\дрова etc). Нужен самый бюджетный одноплатник на который легко встанет, например, retropie. Или взять андроид свисток и поискать оболочку для этого дела? Критерий - максимально дешево и доступно собрать игровую станцию для старых 8-16 битных игрулек.

 , , ,

xobxobxob
()

Уменьшение боли от жабобыдлокодинга в виме

Форум — Development

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

Задача: писать на жабе в виме (сборку через ant уже осилил).

Навигацию по ошибкам компиляции через :cn/cp/cc прикрутить осилю самостоятельно.

Костыли работающие через eclipse (eclim), идейку, и т.п. — недопустимы.

Фичи которые очень нужны:

  • заполнение списка модулей (аналог cmd+shift+o в эклипсе)
  • заполнение асбтрактных методов при реализации интерфейсов
  • добавление обязательных обработчиков исключений (например, пишу Thread.sleep, тыкаю хоткей, и втыкается пустой обработчик InterruptedException)
  • подсвечивать строки с warnings и errors прямо в коде разными цветами (думаю это не имеет отношения к топику, и делается каким-то плагином)

необязательно, но желательно

  • подсказки со списками методов в классах, аргументами функций
  • переход на документацию слова под курсором

Если кто-то знает альтернативные текстовые редакторы с подобными фичами — тоже будет интересно узнать (обязательно пишите линки не только на сами редакторы, но и на страницы проектов для настройки работы с жабой).

И еще, у меня кроссплатформа linux/osx, поэтому просьба не предлагать виндовс-онли решения, или линукс-онли. osx-онли в принципе в данный момент устроит, но лучше чтобы работало на osx и линуксе.

 ,

waker
()

Лучший процессор до $230

Форум — Linux-hardware

Ничего лучше Intel Core i5-6600 не нашел, если вы можете предложить варианты, то давайте обсудим, а заодно и посмеемся, например с этого.

P.S. Если вы хотите предложить процессор без встроенного GPU, то предлагайте сразу видеокарту-заглушку и суммируйте стоимость, спасибо.

// чем лучший, например? да всем лучший, детали можно обсудить.

// i5-4690 vs i5-6600 тоже можно обсудить, если предложите.

 , , ,

kep
()

Быстро разряжается ноут Lenovo z50-70

Форум — General

Добрейшего времени, товарищи. Столкнулся с неинтересной, но волнующей меня проблемой. Приехал мне новый ноут Lenovo Z50-70 (i5-4210u, nvidia 840m) взамен Dell 5737 (i7-4500u, radeon R9270x). Пару дней пользовался вин10, разряд батареи был около 4+ часа в режиме: браузер + музыка, ide, 80-90% яркости. Снес наконец-то я вин, поставил любимую федору 24-ую, в биосе отрубил дискретную видеокарту, но это никак не помогло: батарея тает за 2+ часа. Сравнивая с Dell-ом, который при 25% износа батареи мог крутить мне видео по 3-4 часа, меня очень огорчает время работы нового ноута. Подскажите, пожалуйста, с чем может быть связан такой расход и как это отследить.

 , , , ,

MolotovSolution
()

Программа, которая ответит на вопрос «почему»

Форум — Development

Результат нескольких лет труда одного паренька: https://github.com/andyjko/whyline

В действии: https://www.youtube.com/watch?v=t6gVZ-qZ4sI

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

Переворот в отладке? Какому технологическому стеку (помимо java/jvm в данном случае) ещё подвластно подобное? Теоретически, на Smalltalk вполне себе можно замутить. Или на JavaScript. Ещё?

 

yoghurt
()

Как правильно собрать маленькую gentoo ?

Форум — Admin

Озадачили меня на работе собрать маленькую ОС для узкоориентированой задачи. Требования минимальны : php,mysql,xorg+flashplayer . Размер критичен, посему нада исключить всякие ненужные системные утилиты, gcc, ненужные либы и все, то, что в stage3, как я понимаю, занимает около 70% объёма. Думаю делать это так:

emerge --root=/chroot4os openrc udev util-linux ppp и.т.п.

собрать туда ядро я initrd-образом ( кстате, обязателен ли он ? намного ли сложнее без него, учитывая, что система будит работать с USB-флешки ?)

потом emerge --root=/chroot4os xorg-x11 php mysql и.т.п.

Получится ли у меня так сделать ? Я обратил внимание, что emerge предлагает собрать те, зависимости, которых у меня нет в chroot-папке. А откуда тогда берутся USE-флаги - из загруженой ОС или из chroot-ОС. Может собрать её из какого-нить stage 2 или 1 , но не знаю где его взять - на зеркалах генты только stage3. Или использовать что-то типа Catalyst ?

Железо такое: Celeron 2Gz память 2гб, nvidia видуха. Флешки будут по 4Гб, но свободного места всего 1Гиг, а еще нада хранить много логов, за 5-6 месяцев. посему система должна быть как можно меньше.

stage3 распакованый весит около 500Мб. Еслиб втиснуть всё в 300Мб - ваще отличненько было бы, но устроит и 500.

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

 , ,

dmitry_kozak
()

История о том, как я за $350 собрал мощный и практичный ноутбук

Форум — Linux-hardware

Вот фотография моего ноутбука: http://i.imgur.com/UTvyDF7.jpg

Я купил Thinkpad T420 за $220, состояние официально refurbished на заводе, чем он отличается от нового — я так не понял, потому что абсолютно все было новым: корпус, батарея, клавиатура, матрица, внутренности, ни тачпадом, ни даже винчестером не пользовались никогда (7 циклов вкл.выкл).

Конфигурация на момент покупки была такова:

  • i5-2520M (2 ядра, 4 потока)
  • 8GB RAM (2х4GB)
  • 320 GB HDD (7200 rpm)
  • 1366x768 14" матовая

Я продал: процессор i5-2520M ($30), матрицу с кабелем шлейфом ($30), а также память ($35), благодаря чему выручил: $95.

Я купил: 4х-ядерный i7-2720QM ($95), качественную Samsung HD+ 1600x900 матрицу с кабелем-шлейфом ($53) и 16GB памяти ($77), в сумме затраты: $225

Итак, за $350 я получил:

  • i7-2720QM (4 ядра, 8 потоков)
  • 16GB RAM
  • 320 GB HDD (7200 rpm)
  • 1600x900 14" матовая

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

Смог бы я купить такую спеку за $350? Сомневаюсь.

Разумеется, я вставил вместо сидирома hdd-caddy, куда поставил ssd, как и в hdd-слот, а также в mini-pcie слот поставил бывший у меня mini-pcie 64 гиговый ssd. Осталось заменить стоковый wifi, на карточку с a/b/g/n, а то стоковый работает только в b/g/n.

// а да, на этой спеке изкоробочно работает как свежайший OS X 10.11.1 El Capitan, так и гента, причем работает абсолютно все.

 ,

kep
()

Есть сейчас что-то со встраиваемым Linux и GPIO дешевле, чем первая Rasberry Pi?

Форум — Linux-hardware

Собственно, сабж.

Intel Galileo пока цену имеет кусачую, чтобы ставить его в каждый угол. Cubieboard/Cubietrack тоже дорогие. Arduino Yún (хотя и шилд, но полноценный Linux-комп) имеет цену сравнимую с «Малинкой», но имеет как плюсы, так и минусы в сравнении с ней.

Есть ещё что-то?

 arduino yún, , intel galileo,

KRoN73
()

Проапгрейдил RAM больше чем можно

Форум — Linux-hardware

Я тут недавно докупил себе памяти в ноутбук HP ProBook 4720s.

Было 1Гб + 2Гб

Стало 2Гб + 8 Гб

У производителя указано, что максимальный возможный объём оперативки 8 Гб, а у меня получилось 10 Гб.

Проц CPU Intel Dual Core i3 CPU M 380 @ 2.53GHz (http://ark.intel.com/ru/products/50178 ) там в описании тоже написано, что максимум 8 Гб.

И при этом работает. Причём, если оставить только одну планку 8 Гб, то система не грузится.

  • Это нормально? Может ли это повлиять на работу (например материнка не погорит)?
  • Может и до 16 Гб можно проапгрейдить?
  • И чем тогда определяется лимит на максимальный объём памяти?

OS: Ubuntu 14.04

( Вот что показывают free, lshw, dmidecode )

 , ,

mapcuk
()

1с. Вопросы. (Осторожно, присутствует немного паники.)

Форум — Admin

Если кому-то покажется что это «гон», то это не так.

6 лет занимась всяким «админством» («эникейщик»), ни разу не приходилось сталкиваться с этой штукой. Вроде как её можно на онтоп поставить? Вопрос в том что денег, то, особо, — нету. Без денег можно? Сегодня меня озадачили этим вопросом. На «лицензионное соглашение» и подобную пургу — пофиг. Нужно так чтоб без СМС. Возможно?

На самом деле, начальство (с «вылеченой» 1с на домашнем компе) хочет её на сервак. А тут Я. Со своими доморощенными взглядами на «какой-то, блин, чудный мир, где софт можно брать задарма…».

Зачем им так нужна _именно_эта_ штука? Даже не могу представить что там такое может быть:

— Я купил у тебя булку хлеба за 50 тенеге
— А я получил за него 50 тенге. Это конечно круто, но без 1с все наши братья помрут…

WTF?

Можно ли предложить насяльнику альтернативу?

 

vg6zu
()

Головоломка для программистов TIS-100

Новости — Игры
Группа Игры

TIS-100 (расшифровывается как Tesselated Intelligence System) — это безграничная игра, завязанная на программировании от Zachtronics, создателей SpaceChem и Infinifactory. Ваша задача в этой игре — переписать поврежденные блоки кода (используется язык ассемблера), чтобы починить TIS-100 и узнать все его секреты. О таком программировании вы и не мечтали!

Минимальные системные требования:

  • Процессор: 2 ГГц
  • ОЗУ: 2 Гб
  • Место на жестком диске: 100 MB

>>> Страница на сайте Zachtronics

 programming game, ,

mr_anonymous
()

Установка skype на Gentoo

Форум — Desktop

Решил установить skype в Gentoo. До этого ни разу не устанавливал на генту, но на убунту опыт установки имел, все прошло нормально. Хочу узнать совета как лучше установить, как правильно, какие подводные камни, какого подвоха ожидать и тд у тех кто имел удачный опыт установки скайпа на генту
Имею gentoo amd64.

00:1b.0 Audio device: Intel Corporation 6 Series/C200 Series Chipset Family High Definition Audio Controller (rev 05)
01:00.1 Audio device: NVIDIA Corporation GF108 High Definition Audio Controller (rev ff)
Драйвер альса. В ядре кодек включен, звук есть.
Читал это, рукокнигу.
Если я правильно понял, надо сделать следующее:
emerge skype и emerge apulse, pulseaudio я устанавливать не хочу.
Все ли я правильно понял, или есть что-то еще, что я упустил или не знаю. Какие подводные камни и подвохи меня ожидают?
Заранее спасибо.

 ,

akhmylin
()

Книга для начинающих программистов, ориентированная на Linux

Новости — Документация
Группа Документация

На сайте А.В.Столярова продолжается сбор средств на написание и последующее издание книги «Программирование: введение в профессию».

Автор проекта уже известен публике по своим книгам Программирование на языке ассемблера NASM для ОС Unix, Сверстай диплом красиво: LaTeX за три дня и другими. Электронные версии всех своих книг автор сразу после выхода бумажного издания выкладывает на сайт, считая это принципиальной позицией.

Книга, задуманная Столяровым в этот раз, должна стать руководством для начинающих, ориентированным на *nix-системы (с использованием командной строки в качестве основополагающего принципа при обучении) и покрывающим при этом предмет от нулевого уровня (школьной информатики) до ООП и парадигм программирования; структура книги приблизительно соответствует последовательности программистских курсов на факультете ВМК МГУ, но отличается от программы ВМК наличием общей платформы (*nix), полным исключением заведомо мёртвых инструментов вроде всё ещё применяющихся на ВМК Турбо-Паскаля и ассемблера MASM для MSDOS, а также существенно иначе расставленными акцентами. Примерный план книги представлен здесь, а с оглавлением неоконченной рукописи, уже включающей три части из предполагающихся семи или восьми — здесь.

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

До сей поры я всегда обходился своими силами; задумав книгу, я просто садился и писал её... Всё было хорошо, пока мои задумки не отличались масштабностью; мне всегда удавалось выкроить пару более-менее свободных недель, чтобы написать текст, и десять-пятнадцать тысяч рублей, чтобы издать написанную книжку. Но в этот раз реальность несколько отличается. Задуманная мною книга по своему объёму по меньшей мере в семь-восемь раз превосходит самые большие тексты, которые мне приходилось писать до сих пор

Даже без дополнительных глав ожидаемый объём книги составляет порядка 1000 страниц; автор планирует уложиться в 500 рабочих часов, для выделения которых необходимо на некоторое время отказаться от подработок. Кроме того, издание книги в бумаге потребует серьёзных расходов, а сотрудничество с издателями на их условиях означало бы невозможность распространения (по крайней мере, открытого) её электронной версии. Автор предпочёл объявить о сборе средств.

К настоящему моменту завершены три из четырёх частей, которые предполагалось написать с нуля; автор продолжает работу над последней из этих частей, посвящённой начальным навыкам программирования (с использованием Free Pascal в качестве учебного пособия); кроме того, в книгу должен после переработки войти материал из пособий, изданных ранее, образовав оставшиеся четыре части. Поддержать проект можно здесь; для доноров предусмотрены разнообразные плюшки.

>>> Подробности

 , ,

Croco
()

GCC on Allwinner A10

Форум — Linux-hardware

Добрый вечер! Я тут экспериментирую с gentoo на A10. Решил собрать себе кросс-компилятор, но вот незадача: если на самом кубике я использую armv7a-hardfloat-linux-gnueabi-gcc, то у crossdev-ng его нет, есть только arm-cortex_a8-linux-gnueabi. Не совсем понимаю, это все таки разные компиляторы? Объясните пожалуйста нубу.

CFLAGS:

-march=armv7-a -mfloat-abi=hard -mfpu=neon -ftree-vectorize -mvectorize-with-neon-quad -mcpu=cortex-a8 -mtune=cortex-a8 -O2 -pipe --param=ssp-buffer-size=4 -fomit-frame-pointer

 , , ,

shooter93
()