«gcc» etiketlenmiş sorular

GCC, GNU Derleyici Koleksiyonudur. Linux'ta C, C ++, Go, Fortran ve Ada için de facto standart derleyici ve diğer birçok dili ve platformu da destekliyor. Derleyici dışında GCC, çeşitli platformlarda ve sistemlerde yaygın olarak kullanılan bir araç zincirine (libc, libstdc ++, objdump, nm vb.) Sahiptir.

6
GCC, paylaşımlı kütüphaneler olmadan GMP, MPFR, MPC, ELF ile parça parça nasıl kurulur?
GCC'yi (GNU Derleyici Koleksiyonu) parça parça, geçerli sürümü kullanarak, bağımlılıkların doğru sürümlerini kullanarak, bir paket yöneticisi (yum, rpm, apt, dpkg gibi) kullanmadan ve paylaşılan kitaplıkları kullanmadan nasıl kurabilirim? Tipik geliştiriciler muhtemelen GCC'yi tipik bir şekilde kurmak, paket yöneticinizi kullanmak (yum, rpm, apt, dpkg, port, brew, vb.) Veya buradaki talimatları ( …
115 gcc  elf  gmp  mpfr  mpc 

17
Derleme sorunları: crt1.o bulunamıyor
Geliştirmek için kullandığım sanal bir Debian sistemim var. Bugün llvm / clang'ı denemek istedim. Clang'ı kurduktan sonra eski c-projelerimi (gcc ile) derleyemiyorum. Bu hata: ... /usr/bin/ld: cannot find crt1.o: No such file or directory /usr/bin/ld: cannot find crti.o: No such file or directory collect2: ld returned 1 exit status ... …
115 gcc  clang  ld 

2
C ++ standartlar komitesi, C ++ 11'de unordered_map'in eklediklerini yok etmesini mi amaçlıyor?
Unordered_map :: insert () eklediğiniz değişkeni yok ettiği çok garip bir hatayı izleyerek hayatımın üç gününü kaybettim. Bu oldukça açık olmayan davranış yalnızca çok yeni derleyicilerde görülür: clang 3.2-3.4 ve GCC 4.8'in bu "özelliği" gösteren tek derleyiciler olduğunu buldum . İşte ana kod tabanımdan sorunu gösteren bazı azaltılmış kodlar: #include …
114 c++  gcc  c++11  clang  standards 

4
Cout senkronize mi / iş parçacığı güvenli mi?
Genel olarak akışların senkronize edilmediğini varsayıyorum, uygun kilitlemeyi yapmak kullanıcıya kalmıştır. Ancak, coutstandart kitaplıkta özel muamele görmek gibi şeyler var mı? Yani, birden fazla iş parçacığı yazıyorsa cout, coutnesneyi bozabilirler mi? Senkronize edilmiş olsanız bile yine de rastgele serpiştirilmiş çıktı alacağınızı anlıyorum, ancak bu serpiştirme garantilidir. Yani, coutbirden çok iş …
112 c++  gcc  c++11 

5
PATH_MAX Linux'ta nerede tanımlanır?
#includeBir dizeyi boyutlandırmak için bir int olarak PATH_MAX'ı kullanabilmek için hangi başlık dosyasını çağırmalıyım? Beyan edebilmek istiyorum: char *current_path[PATH_MAX]; Ancak bunu yaptığımda derleyicim (Linux'ta Clang / LLVM) aşağıdaki hatayı veriyor: recursive_find6.c:29:20: error: use of undeclared identifier 'PATH_MAX' char *current_path[PATH_MAX]; ^ Google araması yapmayı denedim ama yine de şansım yok. #include …
112 c  linux  gcc  include  clang 

11
GCC ve ld ile kullanılmayan C / C ++ sembolleri nasıl kaldırılır?
Yürütülebilir dosyamın boyutunu ciddi şekilde optimize etmem gerekiyor ( ARMgeliştirme) ve mevcut yapı şemamda ( gcc+ ld) kullanılmayan sembollerin sıyrılmadığını fark ettim . arm-strip --strip-unneededSonuçta ortaya çıkan çalıştırılabilir dosyaların / kitaplıkların kullanımı, çalıştırılabilir dosyanın çıktı boyutunu değiştirmez (neden olduğuna dair hiçbir fikrim yok, belki de yapamaz) . Kullanılmayan sembollerin ortaya …
111 c++  c  gcc  ld  strip 

4
Belirli bir glibc sürümüne nasıl bağlanabilirim?
Ubuntu Lucid 10.04 bilgisayarımda bir şey derlediğimde, glibc'ye bağlanıyor. Lucid, glibc'nin 2.11'ini kullanır. Bu ikili dosyayı daha eski bir glibc ile başka bir bilgisayarda çalıştırdığımda, komut glibc 2.11 olmadığını söyleyerek başarısız oluyor ... Bildiğim kadarıyla glibc, sembol versiyonlama kullanıyor. Gcc'yi belirli bir sembol sürümüne bağlanmaya zorlayabilir miyim? Somut kullanımımda, ARM …
111 linux  gcc  linker  glibc  libc 


3
Neden sadece yorumların değiştiği iki program ikili dosyası gcc ile tam olarak eşleşmiyor?
İki C programı oluşturdum Program 1 int main() { } Program 2 int main() { //Some Harmless comments } AFAIK, derleme sırasında, derleyici (gcc) yorumları ve gereksiz beyaz alanları görmezden gelmeli ve bu nedenle çıktı benzer olmalıdır. Ama çıktı ikili dosyalarının md5 toplamlarını kontrol ettiğimde, eşleşmiyorlar. Ayrıca optimizasyonu ile derleme …




11
GCC> 2 GB kodla derleme hatası
Toplam 2,8 GB nesne koduna sahip çok sayıda işleve sahibim (maalesef bunun yolu yok, bilimsel hesaplama ...) Onları bağlamayı denediğimde relocation truncated to fit: R_X86_64_32S, derleyici bayrağını belirterek atlatmayı umduğum (beklenen) hatalar alıyorum -mcmodel=medium. Bağlantılı olan ve benim kontrolümde olan tüm kitaplıklar -fpicbayrakla derleniyor . Yine de hata devam ediyor …
108 c++  c  gcc  compiler-errors 

8
sadece bazı kitaplıkları statik bağlama
GCC ile bağlantı kurarken yalnızca bazı belirli kitaplıkları ikili dosyama statik olarak nasıl bağlayabilirim? gcc ... -static ...tüm bağlantılı kitaplıkları statik olarak bağlamayı dener , ancak bazılarının statik sürümüne sahip değilim (örneğin: libX11).

3
Gcc'nin C'deki bazı ifadeleri optimize etmesini nasıl önleyebilirim?
Bir sayfayı kirletmek için (sayfa tablosu girişindeki kirli biti açmak), sayfanın ilk baytlarına şu şekilde dokunuyorum: pageptr[0] = pageptr[0]; Ancak pratikte gcc, ölü depo eleme yoluyla bu ifadeyi yok sayacaktır. Gcc'nin onu optimize etmesini önlemek için ifadeyi aşağıdaki gibi yeniden yazıyorum: volatile int tmp; tmp = pageptr[0]; pageptr[0] = tmp; …
107 c  gcc 

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.