Portál AbcLinuxu, 16. července 2025 04:43


Dotaz: C++: úpravy projektu, cmake, buildování

Martin Stiborský avatar 21.5.2010 21:14 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
C++: úpravy projektu, cmake, buildování
Přečteno: 315×
Odpovědět | Admin

Ahoj, začal jsem se učit C++ a vyzbrojen jakousi hromádkou teoretických informací, chtěl jsem trochu přiohnout twitter klienta Choqok k obrazu svému. Ze začátku jsem jen chtěl zkusit přidat podporu imagepreview pro Twio.cz, když jsem kouknul na kód, nevypadalo to vůbec složitě, kód se prakticky shoduje s už existující podportou Twitpic a yFrog, či co to tam je.

Stejně jsem ale dost moc narazil. Choqok na sestavení používá CMake, tady jsem zatím úplně v pasti.

Když z kódu umažu funkce pro imagepreview z twitpic, zkompiluji

 

tak v nově sestaveném Choqoku, bez podpory twitpic, stejně náhledy obrázků z twitpic fungují. Nevím proč.
Zkusil jsem to na čisto, prázdný adresář, aby se tam nemotaly nějaké staré soubory, stáhl jsem poslední revizi ze svn, odstranil podporu, sestavil, pořád stejný problém.
Je možné, že choqok si ten plugin natáhne z balíčkové/distribuční instalace Choqoku ? Jak ty dva oddělit, nejlépe tak, aby si neviděli ani na soubory konfigurace, je pro to nějaký prefix, volba při kompilaci, nebo tak něco ?
Ještě jedna věc...jak je to s vypisováním na standardní výstup ? V main() choqok vypisuje na konzoli nějaké věci pomocí qDebug(), ale já tohle hlouběji v aplikaci (v pluginu pro ten imagepreview) udělat neumím, nevím proč, možná to souvisí s předchozím problémem.
Moc děkuji za rady, ještě mi chybí hromady teorie, ale to půjde :)
Kvík ..
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

21.5.2010 22:15 rastos | skóre: 63 | blog: rastos
Rozbalit Rozbalit vše Re: C++: úpravy projektu, cmake, buildování
Odpovědět | | Sbalit | Link | Blokovat | Admin
Čo povie

ldd ./choqok

?
Martin Stiborský avatar 21.5.2010 22:30 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
Rozbalit Rozbalit vše Re: C++: úpravy projektu, cmake, buildování

[stibi@pinkfloyd choqok]$ ldd ./choqok
        linux-vdso.so.1 =>  (0x00007fffa2dff000)
        libkdeui.so.5 => /usr/lib/libkdeui.so.5 (0x00007fa7f60b9000)
        libkutils.so.4 => /usr/lib/libkutils.so.4 (0x00007fa7f5e60000)
        libkio.so.5 => /usr/lib/libkio.so.5 (0x00007fa7f59b5000)
        libchoqok.so.0 => /home/stibi/Programovani/Projekty/choqok/build/lib/libchoqok.so.0 (0x00007fa7f574f000)
        libQtSvg.so.4 => /usr/lib/libQtSvg.so.4 (0x00007fa7f54f9000)
        libkdecore.so.5 => /usr/lib/libkdecore.so.5 (0x00007fa7f5080000)
        libQtDBus.so.4 => /usr/lib/libQtDBus.so.4 (0x00007fa7f4e09000)
        libQtCore.so.4 => /usr/lib/libQtCore.so.4 (0x00007fa7f499a000)
        libpthread.so.0 => /lib/libpthread.so.0 (0x00007fa7f477e000)
        libQtGui.so.4 => /usr/lib/libQtGui.so.4 (0x00007fa7f3b26000)
        libQtNetwork.so.4 => /usr/lib/libQtNetwork.so.4 (0x00007fa7f380f000)
        libQtXml.so.4 => /usr/lib/libQtXml.so.4 (0x00007fa7f35cd000)
        libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00007fa7f32c2000)
        libm.so.6 => /lib/libm.so.6 (0x00007fa7f3040000)
        libgcc_s.so.1 => /usr/lib/libgcc_s.so.1 (0x00007fa7f2e2a000)
        libc.so.6 => /lib/libc.so.6 (0x00007fa7f2ace000)
        libSM.so.6 => /usr/lib/libSM.so.6 (0x00007fa7f28c6000)
        libICE.so.6 => /usr/lib/libICE.so.6 (0x00007fa7f26ab000)
        libX11.so.6 => /usr/lib/libX11.so.6 (0x00007fa7f2372000)
        libXtst.so.6 => /usr/lib/libXtst.so.6 (0x00007fa7f216d000)
        libXcursor.so.1 => /usr/lib/libXcursor.so.1 (0x00007fa7f1f64000)
        libXfixes.so.3 => /usr/lib/libXfixes.so.3 (0x00007fa7f1d5f000)
        libXrender.so.1 => /usr/lib/libXrender.so.1 (0x00007fa7f1b56000)
        libkparts.so.4 => /usr/lib/libkparts.so.4 (0x00007fa7f190e000)
        libXss.so.1 => /usr/lib/libXss.so.1 (0x00007fa7f170b000)
        libXext.so.6 => /usr/lib/libXext.so.6 (0x00007fa7f14f9000)
        libz.so.1 => /usr/lib/libz.so.1 (0x00007fa7f12e1000)
        libstreamanalyzer.so.0 => /usr/lib/libstreamanalyzer.so.0 (0x00007fa7f1065000)
        libsolid.so.4 => /usr/lib/libsolid.so.4 (0x00007fa7f0dd2000)
        libacl.so.1 => /lib/libacl.so.1 (0x00007fa7f0bcb000)
        libattr.so.1 => /lib/libattr.so.1 (0x00007fa7f09c7000)
        libbz2.so.1.0 => /lib/libbz2.so.1.0 (0x00007fa7f07b7000)
        liblzma.so.0 => /usr/lib/liblzma.so.0 (0x00007fa7f0597000)
        libdl.so.2 => /lib/libdl.so.2 (0x00007fa7f0393000)
        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0x00007fa7f018f000)
        librt.so.1 => /lib/librt.so.1 (0x00007fa7eff87000)
        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007fa7efca7000)
        /lib/ld-linux-x86-64.so.2 (0x00007fa7f66c4000)
        libpng14.so.14 => /usr/lib/libpng14.so.14 (0x00007fa7efa7f000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x00007fa7ef7e8000)
        libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007fa7ef5a0000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x00007fa7ef36c000)
        libssl.so.1.0.0 => /usr/lib/libssl.so.1.0.0 (0x00007fa7ef111000)
        libcrypto.so.1.0.0 => /usr/lib/libcrypto.so.1.0.0 (0x00007fa7eed5b000)
        libuuid.so.1 => /lib/libuuid.so.1 (0x00007fa7eeb57000)
        libxcb.so.1 => /usr/lib/libxcb.so.1 (0x00007fa7ee93c000)
        libXi.so.6 => /usr/lib/libXi.so.6 (0x00007fa7ee72e000)
        libstreams.so.0 => /usr/lib/libstreams.so.0 (0x00007fa7ee4ef000)
        libxml2.so.2 => /usr/lib/libxml2.so.2 (0x00007fa7ee1a2000)
        libpcre.so.0 => /lib/libpcre.so.0 (0x00007fa7edf72000)
        libexpat.so.1 => /usr/lib/libexpat.so.1 (0x00007fa7edd4a000)
        libXau.so.6 => /usr/lib/libXau.so.6 (0x00007fa7edb48000)
        libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x00007fa7ed943000)

Kvík ..
Martin Stiborský avatar 22.5.2010 06:01 Martin Stiborský | skóre: 26 | blog: Stibiho bláboly | Opava
Rozbalit Rozbalit vše Re: C++: úpravy projektu, cmake, buildování
Odpovědět | | Sbalit | Link | Blokovat | Admin

Jeden problém vyřešen.

Zapomínal jsem na make install, tedy ani ne zapomínal, já ho ignoroval, myslel jsem, že mi stačí make a spustit rovnou binárku kterou to vyplivne, nestačí. Musím si to víc prostudovat.

Tím se tedy řeší i qDebug/kDebug problém, vypisuje to bez problémů.

Kvík ..

Založit nové vláknoNahoru

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

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.