Visual C ++ 2010 Express kullanarak 64 bitlik bir uygulama nasıl derlenir?


128

64 bitlik bir uygulamayı Visual C ++ 2010 Express'in 32 bit sürümü ile derlemenin basit bir yolu var mı? Varsa hangi konfigürasyonlar gereklidir?

Yanıtlar:


181

İşte adım adım talimatlar:

  1. Windows Yazılım Geliştirme Kiti sürüm 7.1'i indirin ve yükleyin. Visual C ++ 2010 Express 64 bit derleyici içermez, ancak SDK içerir. SDK'ya bir bağlantı: http://msdn.microsoft.com/en-us/windowsserver/bb980924.aspx
  2. Proje yapılandırmanızı değiştirin. Projenizin Özelliklerine gidin. İletişim kutusunun üstünde bir "Yapılandırma" açılır menüsü olacaktır. "Tüm Yapılandırmalar" ı seçtiğinizden emin olun. Ayrıca "Win32" yazan bir "Platform" açılır menüsü de olacaktır. Son olarak sağda bir "Configuration Manager" düğmesi var - bu düğmeye basın. Açılan iletişim kutusunda projenizi bulun, Platform açılır menüsünü tıklayın, Yeni'yi seçin, ardından x64'ü seçin. Şimdi "Etkin çözüm platformu" açılır menüsünü "x64" olarak değiştirin. Özellikler iletişim kutusuna döndüğünüzde, "Platform" açılır menüsünde artık "x64" yazmalıdır.
  3. Son olarak, araç setinizi değiştirin. Projenizin Özellikler menüsünde, Yapılandırma Özellikleri | Genel olarak, Platform Araç Setini "v100" den "Windows7.1SDK" olarak değiştirin.

Bu adımlar benim için zaten çalıştı. 2. adımla ilgili daha fazla ayrıntı, daha önceki bir posterde belirtilen Microsoft başvurusunda bulunabilir: http://msdn.microsoft.com/en-us/library/9yb4317s.aspx .


2
Tebrikler - cevabınız size 275 tekrar kazandırdı. Harika bir cevap için teşekkürler!
Nathan Osman

Windows XP kullanıyorum ama SDK Windows 7 içindir. Bu yine de çalışacak mı?
0x499602D2

@ 0x499602D2: Bilmiyorum. Umarım Visual C ++ ve SDK sürümleri aynı olsaydı, olurdu. Onu denedin mi?
Matt

2
Bu benim için sadece burada bahsedilen 3. ve 4. yamaları yükledikten sonra çalıştı: stackoverflow.com/a/8334985/429873
Dmitry Trofimov

1
@Matt: Bunların hepsi WinXP 64bit'te benim için çalışıyor. Platform Araç Setini Win7.1SDK olarak değiştirmenin nedeni nedir?
IgorStack

48

64 bit araçlar, varsayılan olarak Visual C ++ Express'te kullanılamaz. Visual C ++ Express'te 64 bit araçları etkinleştirmek için, Visual C ++ Express'e ek olarak Windows Yazılım Geliştirme Kiti'ni (SDK) yükleyin. Aksi takdirde, bir projeyi Visual C ++ Express kullanarak 64 bit platformu hedefleyecek şekilde yapılandırmaya çalıştığınızda bir hata oluşur.

Nasıl yapılır: Visual C ++ Projelerini 64 Bit Platformları Hedefleyecek Şekilde Yapılandırma

Referans: http://msdn.microsoft.com/en-us/library/9yb4317s.aspx


bu VB 2010 Express için mevcut mu?
Remus Rigo

Nedense $ (WindowsSdkDir) uygulamam doğru çalışmıyor gibi görünüyordu, ancak mutlak yolları manuel olarak ekledikten sonra bir şampiyon çalıştı.
rogerdpack

5
Talimatları izledikten sonra x64 platformu için boş özellik sayfaları almaya devam ettim. Derleyici güncellemesini buraya yüklemem gerekiyordu . KB2519277'de daha fazla bilgi .
kipkennedy

14

Yalnızca Windows 7 SDK'yı değil , Windows7 .1 SDK'yı da indirdiğinizden emin olun . Bu bana çok fazla kafa çarpmasına neden oldu.


9

Buna eklemek için önemli bir adım buldum - SDK'yı kurduktan sonra proje özelliklerinize gidin ve Konfigürasyon Özellikleri-> Genel-> Platform Araç Setini v100'den veya her ne ise Windows7.1SDK'ya değiştirin. Bu $ (WindowsSdkDir) 'i uygun yere değiştiriyor ve karşılaştığım diğer bazı zorlukları da çözüyor gibi görünüyor.


5

Windows SDK v7.1 yüklüyse Visual Studio 2010 Professional veya Visual Studio 2010 Express'i Visual Studio 2010 SP1'e yükselttiğinizde Visual C ++ derleyicilerinin kaldırıldığını unutmayın.

Bu sorunu çözmeye yönelik talimatlar için Microsoft Destek sitesinde KB2519277'ye bakın .


5
Bu, eldeki soruya aslında cevap vermediği için daha iyi bir yorum olarak sunulacaktır.
Security Hound

4

Windows SDK'yı indirin ve ardından Görünüm-> Özellikler-> Yapılandırma Yöneticisi-> Aktif Çözüm Platformu-> Yeni-> x64'e gidin.


1
çalıştırılacak program nedir? "Görünüm" içeren herhangi bir program bulamıyorum
Stéphane Laurent

3

64 bitlik bir ortamda programlama, 32 bit ortamdan oldukça farklıdır. Oluşturulan kod, 32 ve 64 bit kodda tamamen farklı montaj yapısına sahiptir, hatta fonksiyonlarla iletişim kurmanın protokolleri bile değişir. Dolayısıyla, 32 bit derleyiciyi kullanarak 64 bit kod üretemezsiniz.

Microsoft'un web sitesinde 64 bitlik bir hedefi hedefleyen ancak 32 bit geliştirme makinesi kullanan bir makale görmek isteyebilirsiniz .


Verilen cevap Intel Belgeler başına gibidir
perilbrain

Evet, herhangi bir bağımlılığın 64 bit derleyici kullanılarak (yeniden) derlenmesi gerektiği doğrudur, aksi takdirde bağlantı adımı başarısız olur.
rogerdpack

2

Jakob'un söylediği gibi: 10.0.40219 sürümünün MS VC ++ x64 ve x86 çalıştırma zamanları ve yeniden üretilebilir öğeleri varsa Windows sdk 7.1 yüklenemez. onları kaldırdıktan sonra sdk kurulumu tamam, VS C ++ SP1 tekrar iyi bir şekilde kurulabilir.

Saygılarımla

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.