Bugs item #1205568, was opened at 2005-05-20 13:05
Message generated for change (Comment added) made by loewis
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1205568&group_id=5470

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: Build
Group: Python 2.4
Status: Open
Resolution: None
Priority: 5
Submitted By: Robert M. Zigweid (rzigweid)
Assigned to: Nobody/Anonymous (nobody)
Summary: Compile fails on Darwin8 with --with-cxx=g++

Initial Comment:
As has been previously reported and fixed in some portions of the build 
process, building on Darwin 8 with gcc-4.0 requires some extra libraries to 
be passed. 

When --with-cxx=g++ is specified to configure, and possibly for other flags 
that make the build process be conscious of C++.  


Tail of error:
gcc  -u _PyMac_Error -o python.exe                 Modules/ccpython.o           
      libpython2.4.a -ldl      
/usr/bin/ld: Undefined symbols:
___gxx_personality_v0
collect2: ld returned 1 exit status
make: *** [python.exe] Error 1


Fix:
Add -lSystem and -lSystemStubs for Darwin 8 to the linker where 
appropriate.  I haven't identified all these spots though.

----------------------------------------------------------------------

>Comment By: Martin v. Löwis (loewis)
Date: 2005-06-03 20:18

Message:
Logged In: YES 
user_id=21627

Ok. configure should have detected that you need g++ to
link. To do so, it compiles the program

void foo();int main(){foo();}void foo(){}

with g++ (g++ -c), then links the object file with gcc. If
that fails, it concludes that g++ is needed.

Can you please
a) confirm that this specific procedure indeed links
correctly, and
b) experiment to find out what changes to the program need
to be made so that it fails to link because of
___gxx_personality_v0
?

To analyse b), a number of issues have to be considered: it
may be that more include files are needed in the test
program, it may be that other compiler flags need to be
passed, and it may be that more code needs to be added. If
you cannot easily make the test case fail, please try to
reduce Modules/ccpython so that moves towards the test code.

----------------------------------------------------------------------

Comment By: Robert M. Zigweid (rzigweid)
Date: 2005-06-03 13:56

Message:
Logged In: YES 
user_id=554287

Firstly, exposing this bug, I discovred, also requires passing --with-
pydebug=true.  It's fine if you don't compile with pydebug.  I'm sorry I did 
not 
mention/realize that initially.

Secondly in response to loewis comment.  It looks like linking with g++ instead 
of gcc as you eluded to takes care of the problem.

Ilyria% gcc  -u _PyMac_Error -o python.exe >                 Modules/ccpython.o 
>                 libpython2.4.a -ldl    
/usr/bin/ld: Undefined symbols:
___gxx_personality_v0
collect2: ld returned 1 exit status
Ilyria ~/src/Python-2.4.1                                      05-06-03  7:53AM
[gcc  -u _PyMac_Error -o python.exe \n                Modules/ccpython.o \n     
           
libpython2.4.a -ldl    ]
Ilyria% g++  -u _PyMac_Error -o python.exe                 Modules/ccpython.o   
              libpython2.4.a -ldl
Ilyria ~/src/Python-2.4.1                        

----------------------------------------------------------------------

Comment By: Martin v. Löwis (loewis)
Date: 2005-05-20 23:13

Message:
Logged In: YES 
user_id=21627

Can you check whether just linking with g++ (instead of
linking with gcc, and still not adding -lSystem) also solves
the problem?

configure is supposed to detect that g++ is needed for
linking; if linking with g++ solves the problem, then
configure.in must be enhanced to properly auto-detect this case.

----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1205568&group_id=5470
_______________________________________________
Python-bugs-list mailing list 
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to