abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 11:00 | Bezpečnostní upozornění

Byly zveřejněny informace o bezpečnostní chybě CVE-2016-8655 v Linuxu zneužitelné k lokální eskalaci práv. Chyba se dostala do linuxového jádra v srpnu 2011. V upstreamu byla opravena minulý týden [Hacker News].

Ladislav Hagara | Komentářů: 0
včera 22:00 | Komunita

Přibližně před měsícem bylo oznámeno, že linuxová distribuce SUSE Linux Enterprise Server (SLES) běží nově také Raspberry Pi 3 (dokumentace). Obraz verze 12 SP2 pro Raspberry Pi 3 je ke stažení zdarma. Pro registrované jsou po dobu jednoho roku zdarma také aktualizace. Dnes bylo oznámeno, že pro Raspberry Pi 3 je k dispozici také nové openSUSE Leap 42.2 (zprávička). K dispozici je hned několik obrazů.

Ladislav Hagara | Komentářů: 4
včera 06:00 | Zajímavý software

OMG! Ubuntu! představuje emulátor terminálu Hyper (GitHub) postavený na webových technologiích (HTML, CSS a JavaScript). V diskusi k článku je zmíněn podobný emulátor terminálu Black Screen. Hyper i Black Screen používají framework Electron, stejně jako editor Atom nebo vývojové prostředí Visual Studio Code.

Ladislav Hagara | Komentářů: 29
včera 06:00 | Zajímavý článek

I letos vychází řada ajťáckých adventních kalendářů. QEMU Advent Calendar 2016 přináší každý den nový obraz disku pro QEMU. Programátoři se mohou potrápit při řešení úloh z kalendáře Advent of Code 2016. Kalendáře Perl Advent Calendar 2016 a Perl 6 Advent Calendar přinášejí každý den zajímavé informace o programovacím jazyce Perl. Stranou nezůstává ani programovací jazyk Go.

Ladislav Hagara | Komentářů: 8
3.12. 16:24 | Nová verze

Byla vydána Mageia 5.1. Jedná se o první opravné vydání verze 5, jež vyšla v červnu loňského roku (zprávička). Uživatelům verze 5 nepřináší opravné vydání nic nového, samozřejmě pokud pravidelně aktualizují. Vydání obsahuje všechny aktualizace za posledního téměř půldruhého roku. Mageia 5.1 obsahuje LibreOffice 4.4.7, Linux 4.4.32, KDE4 4.14.5 nebo GNOME 3.14.3.

Ladislav Hagara | Komentářů: 14
3.12. 13:42 | Pozvánky

V Praze probíhá konference Internet a Technologie 16.2, volné pokračování jarní konference sdružení CZ.NIC. Konferenci lze sledovat online na YouTube. K dispozici je také archiv předchozích konferencí.

Ladislav Hagara | Komentářů: 0
2.12. 22:44 | Komunita

Joinup informuje, že Mnichov používá open source groupware Kolab. V srpnu byl dokončen dvouletý přechod na toto řešení. V provozu je asi 60 000 poštovních schránek. Nejenom Kolabu se věnoval Georg Greve ve své přednášce Open Source: the future for the European institutions (SlideShare) na konferenci DIGITEC 2016, jež proběhla v úterý 29. listopadu v Bruselu. Videozáznam přednášek z hlavního sálu je ke zhlédnutí na Livestreamu.

Ladislav Hagara | Komentářů: 25
2.12. 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 16
2.12. 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 5
2.12. 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 4
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 774 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: Ruzne lokace C++ knihovny

4.12.2009 19:35 Jan Koutny
Ruzne lokace C++ knihovny
Přečteno: 393×
Dobry den,

programuji projekt v C++, ktery pouziva knihovnu libpcrepp. V Makefile na lokalnim stroji mam g++ option
-lpcrecpp
Knihovnu mam nainstalovanou zde:
$ locate libpcrecpp.so
/usr/lib/libpcrecpp.so
/usr/lib/libpcrecpp.so.0
/usr/lib/libpcrecpp.so.0.0.0
Preklad probehne bez problemu a vse funguje. Problem je kdyz chci projekt zkompilovat na jinem pocitaci, kde bezi FreeBSD a tam je umisteni zase takove:
locate libpcrecpp.so
/home2/local/lib/libpcrecpp.so
/home2/local/lib/libpcrecpp.so.0
S predchozim Makefilem mi preklad zhavaruje na tom, ze neni nalezena libpcrecpp knihovna. Pokud pridam do makefile toto:
-lpcrecpp -I/home2/local/include -L/home2/local/lib
Tak to funguje. Jenze je problem, ze program potrebuji kompilovat i pod jinym serverem, kde prvni Makefile zase nefunguje a umisteni knihoven je takove:
locate libpcrecpp.so
/usr/local/lib/libpcrecpp.so
/user/local/lib/libpcrecpp.so.0
Proto by me zajimalo, jestli jde Makefile napsat nejakym jednotnym zpusobem tak, abych nemusel mit pro kazdy server jiny Makefile.

Odpovědi

4.12.2009 20:30 Andrej Herceg | skóre: 43
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Asi budeš musieť použiť autoconf, cmake, waf... (ten program/skript nájde umiestnenie tých knižníc...)
Víťa Šmíd avatar 4.12.2009 22:34 Víťa Šmíd | skóre: 41 | blog: vituv_blog | Praha
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Nevím, jestli to ve FreeBSD funguje stejně, ale v Linuxu se to dá řešit takhle:
pkg-config --libs --cflags libněco
When Chuck Norris plays Monopoly, it affects the actual world economy. | Matematika pro normální lidi
4.12.2009 22:58 Boris Dušek | skóre: 23 | blog: everything
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Tady aspoň vidíš, jak nedokonalé je psát si vlastní Makefile (pokud neznáš dokonale jak syntax make, tak odlišnosti překladačů a linkerů na různých platformách). Takže dlouhodobější řešení je určitě použít nějakou nadstavbu (CMake, Scons, autotools atd.).

Ale když už máš napsaný ten Makefile, který v podstatě funguje, tak je škoda ho vyhodit - tady bych doporučil, aby si v Makefilu měl proměnnou např. LIBDIR, která je defaultně prázdná, ale uživatel ji může na command-line předefinovat. Např. make LIBDIR=/home2/local/lib. Pak v Makefilu otestuješ, jestli je prázdná, a pokud ne, tak přidáš -L$(LIBDIR) do link flagů.
vim ~/.emacs
5.12.2009 14:51 Zdenek
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Dobry den, bohuzel neznam zrovna zpusob, jak konkretne ve Vasem pripade takovy Makefile napsat, ale videl jsem napr. v nekterych projektech pomerne bezne reseni, kdy se Makefile rozdeli do vice soubouru. V prvnim (napr. rules.mak) jsou definovana pravidla, ktere prekladace se pouzivaji a jsou zde definovany cesty ke knihovnam ap. Druhy soubor (Makefile) hned na zacatku nacita ten prvni (include rules.mak) a obsahuje konkretni pravidla napr. na preklad, nebo linkovani jisteho objektu, nebo vycisteni projektu ap. Vyhoda takoveho reseni mimo jine spociva v tom, ze muzete mit vice tech souboru s pravidly pro ruzne prekladace/configurace, nebo systemy, nebo muzete takove soubory s pravidly pouzivat pro vice projektu.
5.12.2009 15:10 l4m4
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
0. Dáš umístění knihovny do nějaké proměnné, která se pak v pravidlech používá. To v každém případě. Níže ji nazývám PCRE_PREFIX.

1. Použiješ autoconf. To nicméně není celé řešení, protože i autoconfu se v tomto případě musí pomoci, aby tu knihovnu našel, obzvlášť, pokud je v obskurních lokacích jako /home2/local/lib.

2. Použiješ pcre-config --prefix, aby ti řekl, kde se knihovna nachází. Lze i bez 1:
PCRE_PREFIX := $(shell pcre-config --prefix)
Normálně by se použil pkg-config nebo alespoň přímo pcre-config --cflags/pcre-config --libs, ale vypadá to, že přímo volby kompilátoru a linkeru umí pcre-config vypsat jen pro C verzi, ne pro C++.

3. Pokud je pcre-config v tak obskurním místě, že není v PATH, holt si ho tam musíš přidat, nebo na něj aspoň udělat z nějakého normálního místa v PATH symlink.
6.12.2009 00:25 vencas | skóre: 32
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
V debianu je (balík libpcre++-dev) soubor /usr/bin/pcre++-config a funguje:
$ pcre++-config --libs
-L/usr/lib -lpcre++
6.12.2009 09:30 l4m4
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Ale nic takového není v upstreamu, což znamená, že je to zase pomýlená debianí aktivita...

Přidávat foo.pc soubory a foo-config skripty do balíku je naprostý nesmysl. Nijak to nezlepší přenositenost (kvůli které ty věci existují), jelikož to není v upstramu, a tudíž ani na ostatních systémech. Ba naopak to zmate vývojáře, kteří mohou nabýt mylné přesvědčení, že se tímto způsobem knihovna dá detekovat.

Nicméně, podíval jsem se pořádně, a i když pcre++-config vypadá jako výmysl Debianu, tak soubor pro pkg-config nakonec existuje, jmenuje se libpcrecpp.cpp, takže by mělo fungovat
pkg-config --cflags --libs libpcrecpp
7.12.2009 10:28 vencas | skóre: 32
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Tak jednak kecáš, pcre++-config.in v originálu libpcre++_0.9.5.orig.tar.gz (jak ho posytuje debian) existuje.

Jednak, i v debianu pochopitelně funguje taky
pkg-config libpcrecpp --cflags --libs
Jo, na debian nedám dopustit ;-)
7.12.2009 11:01 l4m4
Rozbalit Rozbalit vše Re: Ruzne lokace C++ knihovny
Aha, takže aby to nebylo tak jednoduchhé, on má Debian ještě navíc vlastní knihovnu prce... Poslední verze je 8.00 (dost nová, v distribucích bývá 7.něco), takže knihovna s verzí 0.9.5 je kdovíco. Mimochodem, ten přebalený a přejmenovaný .orig tarball v Debianu není pristine upstream source, takže jeho obsah není pro diskusi o upstreamu relevantní.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.