Thực tiễn không tốt là sử dụng phiên bản phát hành của thư viện của bên thứ ba trong gỡ lỗi nhị phân?Trộn gỡ lỗi và phát hành thư viện/nhị phân - thực hành không tốt?
Tôi đang sử dụng thư viện của bên thứ ba và đã biên soạn thư viện .lib phát hành. Exe của tôi là trong phát triển chế độ gỡ lỗi. Sau đó, tôi nhận:
error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in test1.obj
Sau khi một số googling tôi thấy đó là bởi vì tôi đang cố gắng để kết hợp phát hành với gỡ lỗi, và tôi có lẽ nên lập thư viện trong chế độ gỡ lỗi hoặc muddle với vĩ mô _ITERATOR_DEBUG_LEVEL. Nhưng tôi chỉ tò mò nếu đó là cách được giới thiệu và tại sao. Nó chỉ có vẻ cồng kềnh mà tôi cần biên dịch và lưu giữ một bản ghi của cả hai bản phát hành và gỡ lỗi nhị phân cho mỗi thư viện của bên thứ ba mà tôi dự định sử dụng, sẽ rất sớm, trong khi không có ý định gỡ lỗi vào các mã này.
Bạn không thể liên hệ với bên thứ ba này để nhận phiên bản gỡ lỗi hoặc tự xây dựng phiên bản gỡ lỗi? –
Đó là thực hành không tốt: nó gần như được đảm bảo rằng chương trình sẽ sụp đổ hoặc làm những điều xấu. Trước khi VS2010 bạn có thể liên kết, để khám phá tại các lỗi thời gian chạy lạ. Bây giờ ít nhất bạn bị ngăn cản. –
@ JesseGood Có tôi có mã nguồn và tôi vừa biên soạn phiên bản gỡ lỗi. Đã giải quyết được sự cố. Tôi chỉ tự hỏi nếu tôi có thể lấy đi với biên dịch và theo dõi một chế độ. Rõ ràng là không! –