← Back to team overview

linuxdcpp-team team mailing list archive

[Bug 701391] Re: dcplusplus bzr rev 2390 fails to link in release mode with mingw g++ 4.5.2 and ld 2.21

 

that bug has been reported and discussed at length on
<http://rt.openssl.org/Ticket/Display.html?id=2381> (login: guest /
guest); it led to <http://cvs.openssl.org/chngview?cn=20094> which has
been released in OpenSSL 1.0.0c. therefore, using any build of OpenSSL
1.0.0c with DC++ should be safe.

still, it would be preferable if my patch were applied, as:
- it adds -g to generate debug information with the libraries.
- it defines OPENSSL_SYSNAME_WIN32, the absence of which still has a few non-critical consequences despite the above bug report. my understanding is that the openssl team whishes to keep mingw builds able to run on old Windows (98, etc).
- it defines __CRT__NO_INLINE which was only a way to ensure mingw / mingw64 compatibility.
- it removes -mno-cygwin, but my report also led to <http://cvs.openssl.org/chngview?cn=20110> which automatically removes the flag when it is not supported.

if you have a build environment with the official mingw ready, feel free to commit new libraries after applying the patch. there should be no change in header files (include/ dir), just libs.
i would do it but i am waiting for Cygwin to provide one such compiler (currently stalled - <http://cygwin.com/ml/cygwin-apps/2011-01/msg00037.html>). i could also try with an MSYS environment if it is really necessary.

** Bug watch added: OpenSSL RT #2381
   http://rt.openssl.org/Ticket/Display.html?id=2381

-- 
You received this bug notification because you are a member of
Dcplusplus-team, which is subscribed to DC++.
https://bugs.launchpad.net/bugs/701391

Title:
  dcplusplus bzr rev 2390 fails to link in release mode with mingw g++
  4.5.2 and ld 2.21

Status in DC++:
  New

Bug description:
  A reprise of my previous recent bug, but this time using http://mingw-
  cross-env.nongnu.org/ as suggested. The current release is only still
  gcc 4.5.1-based, but the development version at http://mingw-cross-
  env.nongnu.org/#development is 4.5.2, which was claimed to have
  worked. As with that bug, everything functions fine creating a debug
  build. In release mode, however, my results are identical to before
  (this time with a fresh local bzr branch):

  % scons mode=release prefix=i686-pc-mingw32-
  scons: Reading SConscript files ...
  Checking for C++ header file htmlhelp.h... (cached) no
  Checking for C++ header file natupnp.h... (cached) no
  scons: done reading SConscript files.
  scons: Building targets ...
  Linking build/release-mingw/bin/DCPlusPlus.exe (static)
  /opt/mingw/usr/lib/gcc/i686-pc-mingw32/4.5.2/../../../../i686-pc-mingw32/lib/libmsvcrt.a(duyms00667.o):(.text+0x0): multiple definition of `_isxdigit'
  build/release-mingw/dcpp/libdcpp.a(SimpleXMLReader.o):/opt/mingw/usr/lib/gcc/i686-pc-mingw32/4.5.2/../../../../i686-pc-mingw32/include/ctype.h:164: first defined here
  collect2: ld returned 1 exit status
  # collect2 4.98 3.50
  scons: *** [build/release-mingw/bin/DCPlusPlus.exe] Error 1
  scons: building terminated because of errors.
  % i686-pc-mingw32-g++ --version
  i686-pc-mingw32-g++ (GCC) 4.5.2
  Copyright (C) 2010 Free Software Foundation, Inc.
  This is free software; see the source for copying conditions.  There is NO
  warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

  % i686-pc-mingw32-ld --version
  GNU ld (GNU Binutils) 2.21
  Copyright 2010 Free Software Foundation, Inc.
  This program is free software; you may redistribute it under the terms of
  the GNU General Public License version 3 or (at your option) a later version.
  This program has absolutely no warranty.





References