delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/04/03/18:55:22

X-Spam-Check-By: sourceware.org
Message-ID: <000901c65771$b1f93ca0$0ab2a8c0@murks>
From: "Markus Heiden" <markus AT markusheiden DOT de>
To: <cygwin AT cygwin DOT com>
Subject: Problems with linking and std c++ library when using -mnocygwin
Date: Tue, 4 Apr 2006 00:55:22 +0200
MIME-Version: 1.0
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
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

------=_NextPart_000_0005_01C65782.73FD8F80
Content-Type: text/plain;
	format=flowed;
	charset="iso-8859-1";
	reply-type=original
Content-Transfer-Encoding: 7bit

I have an c++ application which uses ifstream.close() like this:

----------
#include <string>
#include <iostream>
using namespace std;

void readMainConfig ()
{
  ifstream *config = new ifstream("x.cfg");
  ...
  config->close();
  delete config;
}
----------

cygwin can compile the .cpp files but when linking everything together, 
always "undefined reference" messages appear for the line with close():

----------
g++  -mno-cygwin -w -march=i686 -Dstricmp=strcasecmp -Dstrcmpi=strcasecmp -I"./someDir" 
 -c -o x1.o x1.cpp
...
g++ -mno-cygwin -fPIC -shared -o xxx_i686.dll  x1.o  x2.o  x3.o ... -lm

x1.o: In function `_Z14readMainConfigv':
x1.cpp:9: undefined reference to `std::basic_ifstream<char, 
std::char_traits<char> >::_close()'
----------

When I use the -O2 g++ option, things go worse. Then "new ifstream("x.cfg")" 
causes undefined references to _open(...).

Under linux everything compiles fine without any substantial change, just 
the compile & link flags are different.

I am using the most current version of all cygwin packages.
What am I doing wrong?

------=_NextPart_000_0005_01C65782.73FD8F80
Content-Type: application/x-pkcs7-signature;
	name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
	filename="smime.p7s"

MIAGCSqGSIb3DQEHAqCAMIACAQExCzAJBgUrDgMCGgUAMIAGCSqGSIb3DQEH
AQAAoIII5jCCAm4wggHXoAMCAQICAw85fTANBgkqhkiG9w0BAQQFADBiMQsw
CQYDVQQGEwJaQTElMCMGA1UEChMcVGhhd3RlIENvbnN1bHRpbmcgKFB0eSkg
THRkLjEsMCoGA1UEAxMjVGhhd3RlIFBlcnNvbmFsIEZyZWVtYWlsIElzc3Vp
bmcgQ0EwHhcNMDUwNzMwMTkyODEyWhcNMDYwNzMwMTkyODEyWjBhMQ8wDQYD
VQQEEwZIZWlkZW4xDzANBgNVBCoTBk1hcmt1czEWMBQGA1UEAxMNTWFya3Vz
IEhlaWRlbjElMCMGCSqGSIb3DQEJARYWbWFya3VzQG1hcmt1c2hlaWRlbi5k
ZTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAw0TGQ00etJKor7fCytE1
VZoA6f2yPRM2KUwbABdapH88Rnxw+inujya2jHJiYEx3665tVxnspTZKb5f1
q26byc9uSo9SrrvATexprSPMxv+I8EaDdtupR+sjT4F+cMuHJp+1vlOcDFeY
mQcnU47A680vYp9V2YBMmFL59S7Dv5kCAwEAAaMzMDEwIQYDVR0RBBowGIEW
bWFya3VzQG1hcmt1c2hlaWRlbi5kZTAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3
DQEBBAUAA4GBALuGbawdVMoJDwQSYAdX5okEU/MO5Ai/9rJSiME184Gyi0Kx
VeSokN7z3cNaWZ6f68M95g9x+6+hhz8lw8UI6AS2+f6fYzUgtX2dvlL+QDfi
bD9QZe7lhrJNKpUpaO0jqq1J5LQY6fEx2rADIDdkbl3+xy00b5SO73a/CW4x
Byu4MIIDLTCCApagAwIBAgIBADANBgkqhkiG9w0BAQQFADCB0TELMAkGA1UE
BhMCWkExFTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTESMBAGA1UEBxMJQ2FwZSBU
b3duMRowGAYDVQQKExFUaGF3dGUgQ29uc3VsdGluZzEoMCYGA1UECxMfQ2Vy
dGlmaWNhdGlvbiBTZXJ2aWNlcyBEaXZpc2lvbjEkMCIGA1UEAxMbVGhhd3Rl
IFBlcnNvbmFsIEZyZWVtYWlsIENBMSswKQYJKoZIhvcNAQkBFhxwZXJzb25h
bC1mcmVlbWFpbEB0aGF3dGUuY29tMB4XDTk2MDEwMTAwMDAwMFoXDTIwMTIz
MTIzNTk1OVowgdExCzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENh
cGUxEjAQBgNVBAcTCUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1
bHRpbmcxKDAmBgNVBAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNp
b24xJDAiBgNVBAMTG1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkG
CSqGSIb3DQEJARYccGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTCBnzAN
BgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA1GnX1LCUZFtx6UfYDFG26nKRsIRe
fS0Nj3sS34UldSh0OkIsYyeflXtL734Zhx2G6qPduc6WZBrCFG5ErHzmj+hN
D3EfQDimAKOHePb5lIZererAXnbr2RSjXW56fAylS1V/Bhkpf56aJtVquzgk
CGqYx7Hao5iR/Xnb5VrEHLkCAwEAAaMTMBEwDwYDVR0TAQH/BAUwAwEB/zAN
BgkqhkiG9w0BAQQFAAOBgQDH7JJ+Tvj1lqVnYiqk8E0RYNBvjWBYYawmu1I1
XAjPMPuoSpaKH2JCI4wXD/S6ZJwXrEcp352YXtJsYHFcoqzceePnbgBHH7UN
KOgCneSa/RP0ptl8sfjcXyMmCZGAc9AUG95DqYMl8uacLxXK/qarigd1iwzd
UYRr5PjRzneigTCCAz8wggKooAMCAQICAQ0wDQYJKoZIhvcNAQEFBQAwgdEx
CzAJBgNVBAYTAlpBMRUwEwYDVQQIEwxXZXN0ZXJuIENhcGUxEjAQBgNVBAcT
CUNhcGUgVG93bjEaMBgGA1UEChMRVGhhd3RlIENvbnN1bHRpbmcxKDAmBgNV
BAsTH0NlcnRpZmljYXRpb24gU2VydmljZXMgRGl2aXNpb24xJDAiBgNVBAMT
G1RoYXd0ZSBQZXJzb25hbCBGcmVlbWFpbCBDQTErMCkGCSqGSIb3DQEJARYc
cGVyc29uYWwtZnJlZW1haWxAdGhhd3RlLmNvbTAeFw0wMzA3MTcwMDAwMDBa
Fw0xMzA3MTYyMzU5NTlaMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3
dGUgQ29uc3VsdGluZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVy
c29uYWwgRnJlZW1haWwgSXNzdWluZyBDQTCBnzANBgkqhkiG9w0BAQEFAAOB
jQAwgYkCgYEAxKY8VXNV+065yplaHmjAdQRwnd/p/6Me7L3N9VvyGna9fww6
YfK/Uc4B1OVQCjDXAmNaLIkVcI7dyfArhVqqP3FWy688Cwfn8R+RNiQqE88r
1fOCdz0Dviv+uxg+B79AgAJk16emu59l0cUqVIUPSAR/p7bRPGEEQB5kGXJg
t/sCAwEAAaOBlDCBkTASBgNVHRMBAf8ECDAGAQH/AgEAMEMGA1UdHwQ8MDow
OKA2oDSGMmh0dHA6Ly9jcmwudGhhd3RlLmNvbS9UaGF3dGVQZXJzb25hbEZy
ZWVtYWlsQ0EuY3JsMAsGA1UdDwQEAwIBBjApBgNVHREEIjAgpB4wHDEaMBgG
A1UEAxMRUHJpdmF0ZUxhYmVsMi0xMzgwDQYJKoZIhvcNAQEFBQADgYEASIzR
UIPqCy7MDaNmrGcPf6+svsIXoUOWlJ1/TCG4+DYfqi2fNi/A9BxQIJNwPP2t
4WFiw9k6GX6EsZkbAMUaC4J0niVQlGLH2ydxVyWN3amcOY6MIE9lX5Xa9/eH
1sYITq726jTlEBpbNU1341YheILcIRk13iSx0x1G/11fZU8xggHMMIIByAIB
ATBpMGIxCzAJBgNVBAYTAlpBMSUwIwYDVQQKExxUaGF3dGUgQ29uc3VsdGlu
ZyAoUHR5KSBMdGQuMSwwKgYDVQQDEyNUaGF3dGUgUGVyc29uYWwgRnJlZW1h
aWwgSXNzdWluZyBDQQIDDzl9MAkGBSsOAwIaBQCggbowGAYJKoZIhvcNAQkD
MQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMDYwNDAzMjI1NTIyWjAj
BgkqhkiG9w0BCQQxFgQUJl+ELi04f4QgY0GEvVSkegKpWMwwWwYJKoZIhvcN
AQkPMU4wTDAKBggqhkiG9w0DBzAOBggqhkiG9w0DAgICAIAwDQYIKoZIhvcN
AwICAUAwBwYFKw4DAgcwDQYIKoZIhvcNAwICASgwBwYFKw4DAh0wDQYJKoZI
hvcNAQEBBQAEgYAhGW2raBnuDWV7piYaRdRGItXSrO2Ymi9CvH3XLiaZIPNk
rAfvo4WExHCoLnS1N3qQBL5OOWtyIr3mPPMDfxSRMgdRqTvJUG14SaB1mjXd
oisUHUhd4i90C7usNOekYDT2tOXqzgHMT3kZLcmzsTeH3ZR1n/yJ6xVWRNkb
C0V8ZQAAAAAAAA==

------=_NextPart_000_0005_01C65782.73FD8F80--


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019