2010-11-11 11 views
8

Gcc 4.4.5 sürümü ile birlikte gelen Ubuntu'nun son sürümünü kullanıyorum. Benim tarafımdan yazılmayan bir programı yeniden derlemem gerekiyor ve bu sadece 4.0 gibi gcc'nin eski bir sürümü ile derlenebilir. Bu eski sürümü yapılandırmayı başardım ve eski gcc sürümümün /opt/gcc-4.0.1/bin içinde olması için yükleme işlemi sırasında bir önek kullandım. ln -s /opt/gcc-4.0.1/bin/gcc gcc kullanarak bir link bağlantı oluşturmaya çalıştım. Ama ben gcc -v'u çağırdığımda hala gcc version 4.4.5 sonucunu elde ediyorum. Zaten bir makefile ile gelen programımı derlemek için, make yaparsam hala gcc'nin yeni sürümünü kullanıyor. Eski sürümü kullanmak için make'a nasıl söyleyebilirim?Linux Ubuntu'da GCC'nin 2 farklı sürümü nasıl kullanılır ve bunlardan birini kullanmak için MAKE'yi zorlayın

cevap

18

Kullanılacak araçları belirlemek için bazı standart değişkenleri kullanırsanız, C-derleyici değişkeni "CC" olarak adlandırılır. Ya doğrudan bunu yalnız çalışıyoruz ya herkes aynı kurulumu varsa gayet sizin Makefile

CC=/opt/gcc-4.0.1/bin/gcc 

yılında CC değişkeni ayarlayabilirsiniz. Yoksa şöyle komut satırında iletebiliriz:

make CC=/opt/gcc-4.0.1/bin/gcc 

Üçüncü seçenek ne için çalışmıyor neden olan (yolunuzda her şeyden önce /opt/gcc-4.0.1/bin ayarlanır Eğer, geçerli dizin yolu değil, bu yüzden arama yaparken orada koymak Sembolik bağ bütünlüğü için

export PATH=/opt/gcc-4.0.1/bin:$PATH 

, sizin symlink çözümde, sen almak için ./gcc çağırmak zorunda kalacak) dikkate alınmayacaktır doğru gcc örneği, ancak IMHO bu muhtemelen en iyi çözüm değildir. Sonra configure` oluşturulan `Makefile` bunu belirlesin` çalıştırmadan önce bir ihraç kabuk değişkeni olarak `CC` ayarı HTH

+1

OP derleme paketi' configure' komut dosyası kullanıyorsa

. – caf

+1

make CC =/opt/gcc-4.0.1/bin/gcc mükemmel çalışır ve daha kolay çözümdür! Teşekkürler – blackLabrador

İlgili konular