2012-04-29 10 views
6

निम्न कोड g ++ - 4.7.0 के साथ संकलित त्रुटि देता है लेकिन g ++ - 4.6 के साथ ठीक संकलित करता है।boost :: date_time, g ++ - 4.7.0, संकलन त्रुटि

#include <iostream> 
#include <boost/date_time/local_time/local_time.hpp> 
using namespace std; 
int main(){ 
    boost::posix_time::ptime time_t_epoch(boost::gregorian::date(1970,1,1)); 
    cout << time_t_epoch << endl; 
    return 0; 
} 

निम्नलिखित है कि बार-बार देखा जाता है त्रुटि संदेश (संकलक बहुत से संदेश आउटपुट)

/usr/include/boost/date_time/local_time/local_date_time.hpp:433:84: error: use of deleted function boost::shared_ptr<boost::date_time::time_zone_base<boost::posix_time::ptime, char> >::shared_ptr(const boost::shared_ptr<boost::date_time::time_zone_base<boost::posix_time::ptime, char> >&) 

मैं Ubuntu 12.04 और libboost की तारीख-time1.46.1 का उपयोग कर रहा है।

कोई सुझाव?

+0

क्या आप दोनों मामलों में बढ़ावा के समान संस्करण का उपयोग कर रहे हैं? – juanchopanza

+0

हां। मुझे अपनी मशीन पर स्थापित बूस्ट लाइब्रेरीज़ का कोई अन्य संस्करण नहीं दिख रहा है। बीटीडब्ल्यू, यह एक संकलन त्रुटि सही है? तो लाइब्रेरी का संस्करण यहां मायने रखता है? – suresh

+0

यह एक संकलित त्रुटि है। मैं इसे पुन: पेश नहीं कर सकता, लेकिन मेरा बढ़ावा सी ++ 11 के साथ नहीं बनाया गया है। ऐसा लगता है कि तुम्हारा है (कन्स्ट्रक्टर डिलीट सी ++ 11 है), इसलिए मुझे लगता है कि नवीनतम उबंटू पर बूस्ट अलग-अलग बनाया गया है। क्या आपने इसे स्वयं बनाया है, या 'get-apt install' का उपयोग करें? – juanchopanza

उत्तर

6

समस्या को हल करने के द्वारा हल किया गया था-1.48

+2

यह सुनकर अच्छा लगा, अब मैं अपग्रेड के समय जानता हूं। आपको अपना उत्तर स्वीकार करने की अनुमति है (लेकिन आपको कोई प्रतिनिधि बिंदु नहीं मिलता है :-)) – juanchopanza

+0

मेरे लिए समान है, लेकिन मैं मैकोज़ और gcc47 (मैकपॉर्ट्स के माध्यम से) का उपयोग कर रहा था। 1.44 से बढ़ाकर 1.51 तक अपडेट किया गया। – chahuistle

संबंधित मुद्दे