delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
X-SWARE-Spam-Status: | No, hits=-2.4 required=5.0 tests=AWL,BAYES_00 |
X-Spam-Check-By: | sourceware.org |
Message-ID: | <4A294CB9.9020902@sh.cvut.cz> |
Date: | Fri, 05 Jun 2009 18:50:01 +0200 |
From: | =?UTF-8?B?VsOhY2xhdiBIYWlzbWFu?= <v DOT haisman AT sh DOT cvut DOT cz> |
User-Agent: | Thunderbird 2.0.0.21 (Windows/20090302) |
MIME-Version: | 1.0 |
To: | cygwin AT cygwin DOT com |
Subject: | Re: GCC --enable-auto-import problem |
References: | <f4d6f44b0906040220x43a62dddr33e784821d02471f AT mail DOT gmail DOT com> <f4d6f44b0906041802o774863e5l5e718a4904fd867f AT mail DOT gmail DOT com> |
In-Reply-To: | <f4d6f44b0906041802o774863e5l5e718a4904fd867f@mail.gmail.com> |
X-IsSubscribed: | yes |
Reply-To: | cygwin AT cygwin DOT com |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA256 Huang Bambo wrote, On 5.6.2009 3:02: > In cygwin 1.7: > > 1. download db-4.7.25 from oracle at > http://www.oracle.com/database/berkeley-db/index.html (havn't tested > on other version) > 2. configure like : ../dist/configure --prefix=/home/Bambo/db-for-1.7 > --enable-cxx --enable-pthread_api > 3. make, it will take you a few minutes > 4. write a program like : > #include <db_cxx.h> > > int main( void ) > { > Db db( NULL, 0 ); > return 0; > } > > 5.compile like :g++ -o t test.cpp -L/home/Bambo/db-for-1.7/lib > -ldb_cxx -I/home/Bambo/db-for-1.7/include > will compile and link ok with information: > Info: resolving typeinfo for std::exception by linking to > __imp___ZTISt9exception (auto-import) > /usr/lib/gcc/i686-pc-cygwin/4.3.2/../../../../i686-pc-cygwin/bin/ld: > warning: auto-importing has been activated without > --enable-auto-import specified on the command line. > This should work unless it involves constant data structures > referencing symbols from auto-imported DLLs. > > and the file t.exe can't run, direct run in windows command shell will > report "can't load" with error code 0x00000005. > ( use:"ldd t.exe" to find dlls used by the file will hung ldd) > > 6.compile like:g++ -o t test.cpp -L/home/Bambo/db-for-1.7/lib -ldb_cxx > -I/home/Bambo/db-for-1.7/include -Wl,--enable-auto-import > Then everything goes fine. > ldd t.exe will report: > > $ ldd t.exe > ntdll.dll => /cygdrive/c/WINDOWS/system32/ntdll.dll (0x7c920000) > kernel32.dll => /cygdrive/c/WINDOWS/system32/kernel32.dll (0x7c800000) > cygwin1.dll => /usr/bin/cygwin1.dll (0x61000000) > ADVAPI32.DLL => /cygdrive/c/WINDOWS/system32/ADVAPI32.DLL (0x77da0000) > RPCRT4.dll => /cygdrive/c/WINDOWS/system32/RPCRT4.dll (0x77e50000) > Secur32.dll => /cygdrive/c/WINDOWS/system32/Secur32.dll (0x77fc0000) > cyggcc_s-1.dll => /usr/bin/cyggcc_s-1.dll (0x67f00000) > cygstdc++-6.dll => /usr/bin/cygstdc++-6.dll (0x6c480000) > > > Who can tell me why??? Everything goes fine under cygwin 1.5 with > gcc3(gcc4 not tested), even > without "-Wl,--enable-auto-import" This is a known problem. The explanation is rather technical and long, IIRC. Just use -Wl,--enable-auto-import for all GCC 4.3 compiled code and you are fine. - -- VH -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.9 (MingW32) iFYEAREIAAYFAkopTLkACgkQhQBMvHf/WHn+QADfZdJ2NcGAByHR0/ci1VPbHV4T 4hk3rxUlHl6ObADg2K6ViJnTxXfC+n5PhGR24BB9SkN4sJgv47fmjg== =1zce -----END PGP SIGNATURE----- -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |