Автор Тема: Транслиране по подразбиране на Ц/Ц++ в гцц  (Прочетена 6146 пъти)

remotexx

  • Напреднали
  • *****
  • Публикации: 3236
    • Профил
Не казваш каква е програмката - ок
Ами и не казваш с коя ОС ...ма така като гледам си има готови пакети статично "транслирана" Кайро библиотека..
Е за някои дистрибуции поне!

http://www.rpmfind.net/linux/rpm2html/search.php?query=libcairo-static-devel
като гледам теб ти трябват libcairo-static и libcairo-static-devel със всичките им зависимости и линкваш към тях и си готов

инак и е просто и не е чак толкова просто - щото може да се наложи да билднеш нещото статично барабар със всичките му зависимости и те статично. Реално разликата (откъм с/с++) е само във дефиницията - е и линкването е различно: динамичните ще се опита да ги резолвне при зареждане от съответното *.so докато статичните направо си дърпа кода по време на компилация та тука има един трик ако нямаш статичната библиотека но имаш кода да го ползваш директно т.е. не като библиотека само си добавяш пътя до експорт хедърите и по натам все едно е твой код. Това е много опростено де...

инак ако т'ва статично Кайро иска да се линква със libgcc-static тогава програмчето ти ще стане бая голямо  ;)
не е задължително ама понеже не казваш кое е програмчето и ако се наложи да даунгрейдваш и libgcc ще ти се наложи и него т.е. по-новата му версия да линкваш статично...
http://stackoverflow.com/questions/22375920/about-linux-c-static-library

П.П. Обик. разни програми, като skype, firefox и др. предполагам, си билдват всичко вкл. и зависимостите (всичките) статично и затова там само разпъваш архива палиш и тръгваш  ;D
А има и др. вариант с динамично ЗАРЕЖДАНЕ (не е линкване) на подходяща библиотека *.dll или *.so - по мои спомени навремето Оракъл правеха подобни магарии и то от Джава - ама това е само за напреднали  >:D

Малка поправка - Скайпа е skype-dynamic т.е. и те като Оракъл не линкват към никаква библиотека ами по време на изпълнение детектват какво имаш и първо най-доброто т.е. напр. търсят pulse-audio и ако го няма търсят alsa и ако няма напр. ползват PC Speaker или въобще нямаш звук - и ако намерят нещо вече си пренасочват function pointer-ите към него и така..
« Последна редакция: Feb 05, 2015, 04:50 от remotexx »
Активен

gat3way

  • Напреднали
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
То за динамичното зареждане с dlopen/dlsym пак трябва да си билднеш програмата динамично линкната с libdl. Няма кой знае каква философия и е доста често срещана практика когато искаш да реализираш плъгини към програмата. Примерно apache така си зарежда dso-тата, php така си зарежда библиотеките дето не са вградени и т.н.
Активен

"Knowledge is power" - France is Bacon

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Благодаря Гейт. Много от нещата дето говориш са ми над развитието, но като от части да схванах идеята.

Като спомена COM та се сетих за Шошон. Той веднъж пусна една статия, в която се обяснява на широко, че той си е жив и здрав до ден днешен, но сега е погребан под слой наречен RT. Реално, който пише за тази платформа, все още го ползва, но с надстроики и не прилича на себе си.

Да с ffmpeg идват инструменти. Те са подходящи за обработка (груба) на видео. Аз примерно съм ги ползвал да снимам екрана (без там разни Казам и други програмчета), но кой знае защо ми се разминаваха звук и видео и беше неуспешно, въпреки всичките ми опити.

---

Ремо, щях да пиша широко за това програмче, ако го бях подкарал. Снощи, което ми се явява май пети ден, се отказах. Обикновенно не казвам имена на програми, за да са ми по-общи питанията и да влязат в работа и на друг ламер. Но щом си любопитен, ще споделя. Пък и статия явно няма да има.

Програмчето е това:

http://fifth-browser.sourceforge.net

Както казах сукалче е, толкова е младо, че няма половин година. Попита за ОС, ГНУ/Линукс (в моя случай Дебиан). Не се занимавам с BSD, макар да съм набрал на Ред Хат и да има такова евентуално бъдеще. Засега винаги е ГНУ/Линукс. Е го Сатир мигрира.

Причината да ми стане интересно програмчето е, че потребява памет, колкото Опера 7-9 да речем. Това ме изуми за съвременен интернет-навигатор. Но няма никаква тайна. Програмчето е писано на Ц++0х (нали така се казваше последната версия?)  и използва най-леката джаджна библиотека от стотиците за този език.

Когато излезе 0,1 въпреки, че обра овации, бях решил да не го слагам. Нямаше някакви неща, които ми трябват. Но освен това, като му огледах зависимостите, бяха прекалено нови. Не знам защо на версия 0,2 се излъгах. Не мога да си го обясня. В резултат така си порутих системата, както е ставало само в дните, когато бях на лошото момче от квартала. Бях забравил, какво е да имаш нестабилна и неработеща система.

Повечето зависимости се намират в актуалното издание. Но не всички. Например FLTK му е стара дори от Сид. Хубавото е, че е почти безпроблемна да се надгради от извори. Незнайно защо обаче, тя ползва Кайро. Точно проклетото Кайро. Като иска да рисува върху платно, то да вземе Gegl или дори Ежас, защо по дяволите Кайро?!? А то бара на ниво X11, което означава, че всички духат. Всъщност само ГТК не се чупи. От тук ми дойде половината порутване, но не се отказах.

Останалите зависимости си стават от стабилната версия, но пак има изключения. Например gcc трябва да е от Джеси. Решаваме, че Джеси е достатъчно стабилна. Е да, ама не знам кой малоумник е решил, че glib (и още някакви) трябва да е зависимост на gcc и от там разтресохме и приложенията с GTK. Glib не е като glibc и няма обратна съвместимост. В момента нищо при мен не работи както трябва, ако изобщо нещо работи.

Има някакви библиотечки, които не присъстват в Дебиан, но понеже са малки и нищо друго не ги ползва, те не чупят системата. И тогава стигнах до webkit. Е той ми разказа играта. Незнайно защо му е необходим Питон. Питон е още нещо, което е несъвместимо с предишните си версии. При мен беше изостанал на 2,5, тук се държеше на 2,7,нещо. Пак, че не е 3,0. Надстройване на Питон не е елементарна задача. Въпреки, че му даваш нови неща, той настоява да ползва по-стари (тук вината може би е на пакетажният цех) и да махнеш старите, новият Питон продължава да се държи нещо средно между старата и новата версия. Някой проблеми успях да ги запуша. Но така и не успях да оправя докладван проблем:

https://github.com/clbr/webkitfltk/issues/1

За пича проблем нямало. Е за мен има, а явно и повдигналият билета също. И тук вече му теглих една майна.

Сега се чудя, колко дни ще ми трябват да си поправя системата. Ако питаш защо са ми трябвали дни, за нещо правещо се за няколко часа, отговорът е прост. Прекарах времето основно в чакане. Например около 3 МБ ги тегля за час. А ръчно си тегля пакетите, а не през пакетната система, за да не доунищожа основната система, в резултат, на което сега и пакетната система трябва да поправям. Изобщо лудница. Интересно, че като качих gcc от 3,(не помня какво) до 4,7,1 нямах проблеми. Но от 4,7 на 4,8,3 не стана така. Това ме учуди.

Та така, забавляваме си се.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

ddantgwyn

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 1262
    • Профил
В българската теория няма понятия компилиране и интерпретиране. Те се предават под общият термин транслиране. Защо са решили така, нямам нито най-малка идея.

Всъщност има, но нека не навлизаме в подробности :)
Активен

the lamer's team honourable member

bvbfan

  • Напреднали
  • *****
  • Публикации: 1056
  • Distribution: KaOS
  • Window Manager: Plasma 5
    • Профил
Кво напрайхте  ??? Ползвай въпросната библиотека, но не я слагай в системните пътища да не ти чупи останалите програми. LD_PRELOAD http://stackoverflow.com/questions/426230/what-is-the-ld-preload-trick
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Благодаря за насочването bvbfan!

Ddantgwyn напротив, навлез! Винаги е добре да се научи нещо.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

remotexx

  • Напреднали
  • *****
  • Публикации: 3236
    • Профил
Предполагах че нещо такова ще стане.. но да се върнем по темата

Понеже съм ти длъжник ето и моето мнение:

1. Обади им се да си поправят и зависмостите защото това Кайро се не види там
http://fifth-browser.sourceforge.net/downloads.html

2. Следващия път ползвай виртуалка за тестове

3. и 4. Някой меко казано странни наблюдения:
- Хем се оплакват от това че Опера вече е само обвивка на Кромиума хем те пък си правят обвивка на УебКит
- Имам усещането че са заложили на грешния кон - защо УебКит 1 като вече има УебКит 2 и скоро 1-то ще замине в небитието т.е. в смисъл като не ти поддържа новостите...
- Като искаш малък браузър и/ли бърз избери си някой от тези по-малките тука
http://fifth-browser.sourceforge.net/propaganda.html
Мидори, Аврора и пр. пък ако искаш не само обвивка ами баш браузър - те нещо като конзолен ама с GUI обвивка аз много си тача тоя вградения... НетСърф
http://www.netsurf-browser.org/
+ собствен енджин
+ Written in C (даже не и С++)
ама интересно що с него не се мерят - щото то най - лесно обвивка за готов енджин да се пише нали

П.П. Аз навремето съм им ползвал само HTML парсера (Hubbub) за да не се мъча с регулярни изрази - мамицата им и новите браузъри никой вече не ти дава (HTML) parser tree  най-близкото което можеш да докопаш е Render Tree ами ако не щеш да рендваш си е чисто самоубийство ...та така го ползвах като С/С++ заместител на Html Agility Pack
« Последна редакция: Feb 05, 2015, 21:28 от remotexx »
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Оле-ле, бях забравил за ЛЖ. Преместих се там, след като леля Гошовица взе да прави мизерии (те ги наричат иновации). Не ми хареса и едва след няколко публикации спрях. Май сам ще трябва да си пиша платформа :(

Кайро е зависимост на FLTK, не на петдесетият. Оказа се, че дори кайрото в лошото момче не е достатъчно ново. Но да имат неописани зависимости, но са все малки и вероятно присъстват в дистрото.

Тези всичките интернет-навигатори съм ги пробвал разбира се, имам интереси в тази тема. Пробвал съм ги още при излизане и пробвам всеки нов, който се появи.

Ако бяха освободили вече ненужното Престо, съм сигурен, че биха го ползвали ;) Ползват, каквото има, а има само два развити двигателя. Те не се ядосват толкова, че Опера е вече Хром, а че вече не е Опера, нещото, което вбесява всичките оперджии. И точно това се опитват да постигнат и няма да успеят, защото нямат Престо и старият код :( Но все пак е обещаващ.
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear

remotexx

  • Напреднали
  • *****
  • Публикации: 3236
    • Профил
ами тогава това
http://otter-browser.org/
Активен

go_fire

  • Global Moderator
  • Напреднали
  • *****
  • Публикации: 8792
  • Distribution: Дебиан Сид
  • Window Manager: ROX-Desktop / е17
  • кашик с гранатомет в танково поделение
    • Профил
    • WWW
Да този още не съм го разглеждал, И той ми седи в чакащият „списък“ от отдавна, но лаптопа ми е прекалено слаб за него, а с настолната машина имам определени проблеми и затова още чака :(

п.п. Преди месец или повече минах на Емакс 24,4. Горе-долу причината беше основно eww. За първи път имат нещо свое. Досега са имали върху w3m, linx (или ks не помня) и webkit (през Питон, проект на онези фамозни китайци). Не се впечатлих никак. Links2 е степени отгоре. Но пък е доста впечатляващо за нещо, което е едва стотинa реда.
« Последна редакция: Feb 06, 2015, 09:17 от go_fire »
Активен

В $por4e2 e истината  ;)

***

Aко даваха стипендия за най-глупави, щях да съм човека с най-много Mини Kупъри

***

Reborn since 1998 || 15.09.2007 totally М$ free && conscience clear