2012-10-23 43 views
25

Tôi có một ứng dụng Cocoa để biên dịch và liên kết tốt. Tôi đã chia nhỏ một số mã vào một thư viện tĩnh và sau đó đã quay trở lại và cố gắng liên kết thư viện libMyLib.a đó với chương trình gốc của tôi.std :: chấm dứt undefined trong Cocoa App

bây giờ tôi nhận được một lỗi mối liên kết

Undefined symbols for architecture x86_64: 
    "std::terminate()", referenced from: 

tham khảo một trong những module nguồn mà sử dụng để sống trong dự án chính của tôi, nhưng hiện đang sống tại thư viện.

Tôi đã cố gắng quay lại và kết hợp từng trình biên dịch và cài đặt trình liên kết để xem cài đặt nào khác nhau, nhưng tôi dường như không thể đánh dấu nó xuống. Linh cảm của tôi là tôi đang liên kết với một STD C và cần một C + + STD, nhưng tất cả mọi thứ đang sử dụng trình biên dịch C99 với libs tiêu chuẩn.

Bất kỳ ý tưởng nào?

Cảm ơn!

+7

liên kết trong libC++. Dylib khắc phục sự cố – WebDrive

+2

WebDrive và @Scicare, hãy thêm một câu trả lời và giải thưởng điểm và tiền thưởng tương ứng. –

Trả lời

41

liên kết trong libC++. Dylib khắc phục sự cố

+0

làm cách nào để bạn liên kết? :) –

+2

thêm libC++.Dylib vào danh sách thư viện trong phần Liên kết của tùy chọn xây dựng – WebDrive

+3

Thêm '-lC++' cũng sẽ hoạt động – onlynone

Các vấn đề liên quan