2013-10-24 35 views
8

INtime RTOS'u hedefleyen bir Visual Studio 2010 projesini yükseltme sürecindeyim. Döküm işlemlerini gerçekleştiren kod bağlantı kuramıyor. "Inline derleme" çıktı dosyalarını incelerken, bazı tamsayı döküm işlemleri için VS2013'in __dtol3, __dtoui3, __dtoul3, __ltod3 ve __ultod3 çağrılarına montaj talimatları üreteceği ortaya çıkmaktadır. Sorun, INtime kitaplıklarının bu işlevler için tanım içermemesidir. VS2013'ün hem Hata Ayıklama hem de Sürüm sürümleri için Win32 hedefleri için aynı şeyi yaptığını doğruladım.VS2013, __dtol3, __dtoui3 ve tamsayı türleri arasında döküm için diğer işlevler için çağrı oluşturmayı durdurmak için nasıl kullanılır?

VS2013'ü bu işlevlere çağrı üretmeyi durdurmak için almanın bir yolu var mı?

cevap

11

the /arch option kullanımıyla SSE2 kodlayıcısını devre dışı bırakmanız gerekir (/ arch: IA32 veya/arch: SSE'yi kullanın). Alternatif

... (resmen desteklenmez ne şu edilir; kilometre değişebilir; kendi sorumluluğunuzdadır bunu) bu işlevleri tanımlayan nesne MSVCRT.LIB gelen

Özü ve bu nesneyi bağlamak doğrudan programınıza. Bu işlevler ftol3.obj adlı nesnede tanımlanmıştır; Eğer the lib tool kullanarak seçebiliriz:

=>lib /nologo /list msvcrt.lib | findstr ftol3 
f:\binaries\Intermediate\vctools\crt_bld\SELF_X86\crt\prebuild\INTEL\dll_lib\ftol3.obj 

=>lib /nologo /extract:f:\binaries\Intermediate\vctools\crt_bld\SELF_X86\crt\prebuild\INTEL\dll_lib\ftol3.obj msvcrt.lib 

Sen bağlı olarak ek nesneleri gerekebilir (a) kullandığınız ve (b) tam olarak ne, INTIME kütüphaneleri tanımlamak hangi işlevleri. Yine, bu Visual C++ çalışma zamanı kitaplıklarını kullanmak için desteklenen bir yol değildir ve belirli kullanım durumunuz için çalışmayabilir veya çalışmayabilir.

+1

teşekkür ederiz olduğunu./Arch seçeneği harika çalışıyor! – CppWoman

+0

benim için çalışmıyor. (ilk önce) – jheriko

4

muhtemelen başka bir yol:

eklenti derleme seçeneği /d2noftol3

bu seçenek belgesiz

İlgili konular