2012-01-11 17 views
5

मैं एक धारावाहिक बंदरगाह के माध्यम से एक बाहरी डिवाइस तक पहुंचने का प्रयास कर रहा हूं और इस प्रस्ताव के लिए Boost.Asio का उपयोग करना चाहता हूं। मैंने मिनजीडब्ल्यू के लिए बूस्ट लाइब्रेरीज़ का निर्माण किया है और रेगेक्स उदाहरण को संकलित किया है।Boost.Asio लिंकिंग त्रुटि

लेकिन मैं अगर मैं Boost.Asio से कुछ में शामिल हैं मेरी कोड संकलन करने की समस्या है:

#include <boost/asio/serial_port.hpp> 

int main() { 

    return 0; 
} 

g++ -D _WIN32_WINNT=0x0501 -O0 -g3 -Wall -c -fmessage-length=0 -osrc\SerialPortTest.o ..\src\SerialPortTest.cpp 
g++ -LC:\boost-libs\boost\bin.v2\libs\thread\build\gcc-mingw-4.5.2\release\link-static\threading-multi -LC:\boost-libs\boost\bin.v2\libs\system\build\gcc-mingw-4.5.2\release\link-static\threading-multi -oSerialPortTest.exe src\SerialPortTest.o -lboost_thread-mgw45-mt-1_48 -lboost_system-mgw45-mt-1_48 
src\SerialPortTest.o: In function `ZN5boost4asio6detail17winsock_init_base7startupERNS2_4dataEhh': 
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../include/boost/asio/detail/impl/winsock_init.ipp:39: undefined reference to `[email protected]' 
src\SerialPortTest.o: In function `ZN5boost4asio6detail17winsock_init_base7cleanupERNS2_4dataE': 
c:/mingw/bin/../lib/gcc/mingw32/4.5.2/../../../../include/boost/asio/detail/impl/winsock_init.ipp:48: undefined reference to `[email protected]' 
collect2: ld returned 1 exit status 

मेरे लिए यह एक जोड़ने समस्या लगती है, लेकिन मैं इसे नहीं मिलता है।

+0

आप विंडोज सॉकेट लाइब्रेरी गायब हैं - कारण यह एक टिप्पणी है कि मैं अपने सिर के शीर्ष से निश्चित नहीं हूं कि पुस्तकालय को mingw – Nim

+1

के तहत क्या कहा जाता है और यहां जवाब है: http: // stackoverflow। com/प्रश्न/2033608/MinGW-लिंकर-त्रुटि विनसॉक – Nim

उत्तर

9

Add -lws2_32 WinSockets लाइब्रेरी के विरुद्ध लिंक करने के लिए ध्वज।

इसके अलावा, इस उपयोगी हो सकता है: MinGW linker error: winsock

0

आप wsock32 पुस्तकालय याद आती है। इसे अपनी निर्भरताओं में जोड़ें और इसे काम करना चाहिए।

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