Hi Norbert,

Thanks very much for mentioning static linking.

I don't understand how the linker is working.  My minimal test program
from https://sourceforge.net/p/tdm-gcc/bugs/264/ compiles fine without
me giving (via Codelite Project options) any instructions to the linker
on where to find library files.  Maybe the TDM-GCC linker has some paths
built in.

#define _GLIBCXX_DEBUG
#include <vector>

std::vector<int> a;

int main(int argc, char* argv[])
{
    std::vector<int> b;
}

By renaming some files I can see that it compiles and links without using:

  C:\TDM-GCC-64\x86_64-w64-mingw32\lib\libwinpthread.a

When I add "-shared-libstdc++" to the linker options, the program
compiles (with TDM-GCC 5.1.0) and runs without errors.   The executable
is then dependent on a number of .dlls in C:\TDM-GCC-64\bin\, which is
in the Windows path.

I tried the same with the actual application I am working on.  This
doesn't link with 5.1.0 due to dependence on an older dll, so I reverted
to 4.9.2.  "-shared-libstdc++" enabled this application to run without
errors, which solves my problem for now.

  - Robin



------------------------------------------------------------------------------
_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to