2010-04-04 13 views
9

Başlığın gösterdiği gibi, herhangi bir C/C++ bayt kodu derleyicisi/yorumlayıcısı var mı? Tam olarak karşılaştırılabilir olan belirli kitaplıklara bağlı olan yorumlanmış bir dilde bir uygulama yazıyorum (belirli bir platform için derleme sırasında kod değişikliklerini gösteren özel bir işaret yok) ancak C ve C++ ile yazılmıştır. Her bir platformla n-platforma özgü lib'leri göndermekten ziyade, platforma özgü bir tercüman tarafından yorumlanan bir dizi lib'leri göndermek iyi olurdu.Herhangi bir C/C++ ile doğal olmayan bytecode derleyici/yorumlayıcıları için?

Mümkün ve/veya kullanılabilir?

EDIT1: Sözlü olarak yorumlanan Python dili Ruby kullanabiliyor olsa da.

+2

Tercüme dili nedir? Daha popüler olanların çoğunun C (ve belki C++) uzantıları eklemenin taşınabilir yolları vardır. Bu iş için LLVM içinde –

+1

'llvm-gcc' ve' clang' var, bence. –

+0

Dil de python olsa da Ruby'yi de kullanabilirim. İkisini ya da birini ya da diğerini kullanabilirim, bütün bir diyagramım var, bu yüzden henüz başlamadım. – Matt

cevap

3

Hangi dili kullanıyorsunuz? .NET tabanlı bir uygulama (ör. IronPython) varsa, .NET CLR ve Mono için bayt kodu üretmek için C++/CLI derleyici ile kullanabilirsiniz.

Bu, C++ kitaplığınız üzerinde tam denetime sahip olmanız durumunda mümkün olabilir. .NET VM/CLR kullanma konusunda emin değilseniz

+0

Gerçekten bunu yapmayı düşünmemiştim. – Matt

+0

Mono kullanmak bunu gerçekleştirmenin en kararlı yolu olmayabilir. Özellikle, C uzantıları dağıtmak için portatif yolları olan Python için –

+0

Standart yaklaşımı kullanarak, Python kodu taşınabilir, ancak C/C++ kütüphanelerinin her platform için yeniden derlenmesi gerekir Standart yaklaşım CLR'ye göre avantajlara sahip olabilir/Mono yaklaşımı, ancak "bir dizi libs'i karşılamıyor" C/C++ kütüphaneleri için gereksinim olan, bir platforma özgü tercüman tarafından yorumlanır. – richj