
I write this code to read 3 files, TM is the size of square matrix, LER the No. of rows of an array and from last value define a non-square matrix of (ler/2)*2
Then... the code read a file with some relations, all are numbers and are assign to C[ler].
Then ... C[ler] is assigned to B[ler/2][2].
Those coordinates, per row, in B[ler/2][2] are assign to a and b.
a and b are the row and the column of the matrix A[tm][tm] where to add 1.
My code crashes and I don't see what the error is.
When I try to compile it, the compiler gcc -g -o MatSim MatSim.cpp prompted:
/usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::Init()' /usr/include/c++/4.6/iostream:75: undefined reference to `std::ios_base::Init::~Init()' collect2: ld returned 1 exit status
Also, when I try to compile it, the compiler f77 -o MatSim MatSim.cpp prompted:
/tmp/cc6ewlkf.o: In function `__static_initialization_and_destruction_0(int, int)': MatSim.cpp:(.text+0x17ad4a): undefined reference to `std::ios_base::Init::Init()' MatSim.cpp:(.text+0x17ad4f): undefined reference to `std::ios_base::Init::~Init()' collect2: ld returned 1 exit status
Solution
The main problem was a library problem, Compile your code using:
g++ -g -o MatSim MatSim.cpp -lstdc
Still not working? Install libraries:
sudo apt-get install g++-multilib
53 Answers
You can resolve this in several ways:
- Use
g++
in stead ofgcc
:g++ -g -o MatSim MatSim.cpp
- Add
-lstdc++
:gcc -g -o MatSim MatSim.cpp -lstdc++
- Replace
<string.h>
by<string>
This is a linker problem, not a compiler issue. The same problem is covered in the question iostream linker error – it explains what is going on.
5Most of these linker errors occur because of missing libraries.
I added the libstdc++.6.dylib in my Project->Targets->Build Phases-> Link Binary With Libraries.
That solved it for me on Xcode 6.3.2 for iOS 8.3
Cheers!
1g++ is equivalent to gcc -xc++ -lstdc++ -shared-libgcc
I was getting a similar error while using sizeof() method. By using g++ or above tags with gcc, the code got compiled.
ncG1vNJzZmirpJawrLvVnqmfpJ%2Bse6S7zGiorp2jqbawutJoaGlxYGt%2FeIGOrqWdnZaeu6awjKucn52imruksYytpmarpJm2sL%2BMm5isnZmjtrW1zaKr