2011-01-17 8 views
2

私はBoost Date_Timeライブラリを使って非常にばかげたプログラムを書いています。Boost Date_単純なプログラムをコンパイルするときの問題

int main(int srgc, char** argv) { 
    using namespace boost::posix_time; 
    date d(2002,Feb,1); //an arbitrary date 
    ptime t1(d, hours(5)+nanosec(100)); //date + time of day offset 
    ptime t2 = t1 - minutes(4)+seconds(2); 
    ptime now = second_clock::local_time(); //use the clock 
    date today = now.date(); //Get the date part out of the time 
} 

まあ、私はそれをコンパイルすることはできません、コンパイラが型を認識しない... まあ、私はそれらを正しく構築された...直列化などのようなブーストLIBSの多くの機能を使用して、私は/ usrで探して/私はそのlibboost_date_time.soを見ることができますローカル/ libフォルダがあり、私は、以下の記述、コンパイルするとき

(私はそのライブラリを構築することができたことは良い兆候):

g++ -lboost_date_time main.cpp

しかし、エラー、それ私がlibを指定すると私に示された私はlibを指定していません。

これはなんですか?誰でも知っていますか?私はあなたのコードでss、以下はあなたのコードが有効になりますよう 予選dateFebを何把握することはできませんけれども

エラーが

main.cpp: In function ‘int main(int, char**)’: main.cpp:9: error: ‘date’ was not declared in this scope main.cpp:9: error: expected ‘;’ before ‘d’ main.cpp:10: error: ‘d’ was not declared in this scope main.cpp:10: error: ‘nanosec’ was not declared in this scope main.cpp:13: error: expected ‘;’ before ‘today’

+4

エラーメッセージが表示されない場合は対処できません。 –

+0

あなたのブーストライブラリはどこにインストールされていますか? -L/path/to/boost/shared/libsを追加してください。 – neuro

+0

実行しているエラーと実際のコマンドラインを貼り付けてください。また、これをコンパイルするアーキテクチャー/プラットフォームについての情報も提供してください。 – wilx

答えて

2

です。

boost::gregorian::date 
boost::date_time::Feb 

これが役に立ちます。

+0

...私はちょうどコードを簡略化するために名前空間を使用して正しいを使用していない...あなたは非常に有用であったとしても...ありがとう:) – Andry

+0

@Andry:あなたは歓迎です:-) –