title: ld: Invalid version 3 (max 0) - error adding symbols: Bad value
body: <p>I'm using g++ 9.2.1 and binutils 2.34. I'm running Manjaro 19.0.2 with linux kernel 5.4.23-1. Everything comes out of a fresh install of Manjaro that I just did, thinking it would solve the problem.</p>
  
  <p>While compiling the following super simple program:</p>
  
  <pre><code>#include &lt;iostream&gt;
  
  int main()
  {
      std::cout &lt;&lt; "Hello" &lt;&lt; std::endl;
  
      return 0;
  }
  </code></pre>
  
  <p>If I run <code>g++ main.cpp -o program</code>, everything's fine and I get Hello when executing ./program.</p>
  
  <p>However, when I run g++ main.cpp -o main.o, it works, but then when I run g++ main.o -o program, I get the following errors:</p>
  
  <pre><code>/usr/bin/ld: main.o: _ZSt4cout: invalid version 3 (max 0)
  /usr/bin/ld : main.o : error adding symbols: bad value
  collect2: error: ld return 1 exit status
  </code></pre>
  
  <p>I have absolutely no idea where it could come from. </p>