Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
alfonz
Člen
Avatar
alfonz:11.10.2014 12:27

Čau,
Chtěl bych se zeptat jak jde přidat do Arduina C++ knihovna s koncovkou .hpp?

Odpovědět
11.10.2014 12:27
lmao
Avatar
MrPabloz
Člen
Avatar
MrPabloz:11.10.2014 12:39

Normálně jak v obzčejném C++?

#include "knihovna.hpp"
Nahoru Odpovědět
11.10.2014 12:39
Harmonie těla a duše, to je to, oč se snažím! :)
Avatar
alfonz
Člen
Avatar
Odpovídá na MrPabloz
alfonz:15.10.2014 17:30

Ok, tak se mi to povedlo, ale nemůžu používat jeho knihovny. Používám tuto knihovnu http://exprtk.codeplex.com/ .
A compiler hází chybu u tohoto(exprtk has not been declared):

typedef exprtk::symbol_table<double> symbol_table_t;
   typedef exprtk::expression<double> expression_t;
   typedef exprtk::parser<double> parser_t;
   typedef exprtk::parser_error::type error_t;
Nahoru Odpovědět
15.10.2014 17:30
lmao
Avatar
Eldan
Člen
Avatar
Eldan:28.10.2014 12:55

Includovat header smaotný nestačí. Potřebuješ ještě soubor který obsahuje samotný kód - (cpp, lib, atd.)

Nahoru Odpovědět
28.10.2014 12:55
Unobfuscated executable == free source code
Avatar
alfonz
Člen
Avatar
Odpovídá na Eldan
alfonz:28.10.2014 14:44

Ale v příkladech k exptrk je includovám jen hpp

Nahoru Odpovědět
28.10.2014 14:44
lmao
Avatar
Eldan
Člen
Avatar
Eldan:28.10.2014 15:35

Ano, ve zdrojáku se includuje hlavičkový soubor. Ale kromě toho musíš linkeru říct kde má hledat definice věcí v tom headeru deklarovaných (dependencies/in­cludes).

Nahoru Odpovědět
28.10.2014 15:35
Unobfuscated executable == free source code
Avatar
alfonz
Člen
Avatar
Odpovídá na Eldan
alfonz:28.10.2014 17:37

Ok, ale když si to stáhnu je tam jen ten .hpp pak 16 příkladů(.cpp), nějaký test(.cpp) a nakonec Makefile bez přípony.

Nahoru Odpovědět
28.10.2014 17:37
lmao
Avatar
Eldan
Člen
Avatar
Eldan:28.10.2014 17:49

Pokud je tam makefile tak to znamená že to asi bude nutné zkompilovat :) Pokud nevíš jak tak tady je návod (http://sux.cz/d913). Je dost možné že to je makefile na linux, v tom případě si budeš muset bu´d sehnat cygwin nebo nějaký linux s gcc (nebo něčím podobným).

Editováno 28.10.2014 17:51
Nahoru Odpovědět
28.10.2014 17:49
Unobfuscated executable == free source code
Avatar
Eldan
Člen
Avatar
Odpovídá na Eldan
Eldan:28.10.2014 17:59

EDIT: Tak jsem na to kouknul a ten makefile je jen pro ty examply, tzn. ti moc nepomůže. Plus jsem úplný idiot a nedošlo mi že máš .hpp a ne .h, takže k tomu lib nepotřebuješ jelikož kód máš už v tom. Mělo by to fungovat úplně bez problému, pokud tedy ten kód který ukazuješ máš v souboru kde includuješ ten header. Když jsem si to zkusil tak mě to jde bez problému - kdyžtak postni celý soubor, možná je tam někde nějaká hloupá chyba.

Editováno 28.10.2014 18:00
Nahoru Odpovědět
28.10.2014 17:59
Unobfuscated executable == free source code
Avatar
alfonz
Člen
Avatar
alfonz:28.10.2014 18:04

Tady to je :)

#include <exprtk.hpp>

String example = "4+5";


void setup()
{
  exprtk::expression<double> expression;
  exprtk::parser<double> parser;

  parser.compile(example,expression);

  Serial.begin(9600);
  Serial.println(parser.value());
}

void loop()
{

}
Editováno 28.10.2014 18:04
Nahoru Odpovědět
28.10.2014 18:04
lmao
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 10.