Сообщение Re[5]: Скомпилированная программа на собранном gcc выдает se от 06.12.2019 22:05
Изменено 06.12.2019 22:10 lolovo
Re[5]: Скомпилированная программа на собранном gcc выдает se
и пожалуй еще изыскания...при компиляции при помощи старого и нового g++ readelf -s -d -S выдает непонятные мне отличия по std::cout:
в старом он находится в .symtab:
Symbol table '.symtab' contains 105 entries:
74: 08049f58 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
в новом он находится в .dynsym:
Symbol table '.dynsym' contains 18 entries:
9: 08049d80 140 OBJECT GLOBAL DEFAULT 25 _ZSt4cout@GLIBCXX_3.4 (2)
при этом используются разные соответствующие libstdc++.so, в старом варианте _ZSt4cout из /usr/lib/libstdc++.so, в новом — из /usr/local/lib/libstdc++.so
как это понимать не понятно...
в старом он находится в .symtab:
Symbol table '.symtab' contains 105 entries:
74: 08049f58 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
в новом он находится в .dynsym:
Symbol table '.dynsym' contains 18 entries:
9: 08049d80 140 OBJECT GLOBAL DEFAULT 25 _ZSt4cout@GLIBCXX_3.4 (2)
при этом используются разные соответствующие libstdc++.so, в старом варианте _ZSt4cout из /usr/lib/libstdc++.so, в новом — из /usr/local/lib/libstdc++.so
как это понимать не понятно...
Re[5]: Скомпилированная программа на собранном gcc выдает se
и пожалуй еще изыскания...при компиляции при помощи старого и нового g++ readelf -s -d -S выдает непонятные мне отличия по std::cout:
в старом он находится в .symtab:
Symbol table '.symtab' contains 105 entries:
74: 08049f58 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
в новом он находится в .dynsym:
Symbol table '.dynsym' contains 18 entries:
9: 08049d80 140 OBJECT GLOBAL DEFAULT 25 _ZSt4cout@GLIBCXX_3.4 (2)
при этом используются разные соответствующие libstdc++.so, в старом варианте _ZSt4cout из /usr/lib/libstdc++.so, в новом — из /usr/local/lib/libstdc++.so
как это понимать не понятно...
upd: и пожалуй кульминация, в которой пожалуй все кроется......
readelf -s -d -S /usr/local/lib/libstdc++.so|grep cout
736: 00175ee0 144 OBJECT GLOBAL DEFAULT 28 _ZSt5wcout@@GLIBCXX_3.4
4084: 00176160 140 OBJECT GLOBAL DEFAULT 28 _ZSt4cout@@GLIBCXX_3.4
2448: 00175ee0 144 OBJECT GLOBAL DEFAULT 28 _ZSt5wcout
5796: 00176160 140 OBJECT GLOBAL DEFAULT 28 _ZSt4cout
readelf -s -d -S /usr/lib/libstdc++.so|grep cout
2868: 000eec00 144 OBJECT GLOBAL DEFAULT 24 _ZSt5wcout@@GLIBCXX_3.4
2902: 000ee980 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
Кто-нибудь может сделать вывод readelf'ом ^^^ у себя libstdc++.so ??? Такое задвоение вообще нормально? Может в этом собака зарыта?
в старом он находится в .symtab:
Symbol table '.symtab' contains 105 entries:
74: 08049f58 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
в новом он находится в .dynsym:
Symbol table '.dynsym' contains 18 entries:
9: 08049d80 140 OBJECT GLOBAL DEFAULT 25 _ZSt4cout@GLIBCXX_3.4 (2)
при этом используются разные соответствующие libstdc++.so, в старом варианте _ZSt4cout из /usr/lib/libstdc++.so, в новом — из /usr/local/lib/libstdc++.so
как это понимать не понятно...
upd: и пожалуй кульминация, в которой пожалуй все кроется......
readelf -s -d -S /usr/local/lib/libstdc++.so|grep cout
736: 00175ee0 144 OBJECT GLOBAL DEFAULT 28 _ZSt5wcout@@GLIBCXX_3.4
4084: 00176160 140 OBJECT GLOBAL DEFAULT 28 _ZSt4cout@@GLIBCXX_3.4
2448: 00175ee0 144 OBJECT GLOBAL DEFAULT 28 _ZSt5wcout
5796: 00176160 140 OBJECT GLOBAL DEFAULT 28 _ZSt4cout
readelf -s -d -S /usr/lib/libstdc++.so|grep cout
2868: 000eec00 144 OBJECT GLOBAL DEFAULT 24 _ZSt5wcout@@GLIBCXX_3.4
2902: 000ee980 140 OBJECT GLOBAL DEFAULT 24 _ZSt4cout@@GLIBCXX_3.4
Кто-нибудь может сделать вывод readelf'ом ^^^ у себя libstdc++.so ??? Такое задвоение вообще нормально? Может в этом собака зарыта?