This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

classification
Title: mac 10.4 buld of 3.0 --with-pydebug fails no __eprintf
Type: Stage:
Components: Build Versions: 3rd party
process
Status: closed Resolution: works for me
Dependencies: Superseder:
Assigned To: Nosy List: barry-scott, loewis
Priority: normal Keywords:

Created on 2008-08-09 16:45 by barry-scott, last changed 2022-04-11 14:56 by admin. This issue is now closed.

Files
File name Uploaded Description Edit
config.log barry-scott, 2008-08-10 15:54 config.log extract at failure
Pull Requests
URL Status Linked Edit
PR 10973 merged mariocj89, 2018-12-06 00:54
Messages (7)
msg70935 - (view) Author: Barry Alan Scott (barry-scott) * Date: 2008-08-09 16:45
I wanted to use Py_DEBUG build to help debug a problem
with ref counts in a C++ extension.

I cannot find eprintf in the sources of python
where does this symbol come from? How do I fix the
build to define it?


$ sw_vers 
ProductName:    Mac OS X
ProductVersion: 10.4.11
BuildVersion:   8S165

$ ./configure --enable-framework --enable-debug --with-pydebug
$ make
...
/usr/bin/install -c -d -m 755 Python.framework/Versions/3.0
if test ""; then \
        gcc -o Python.framework/Versions/3.0/Python  -dynamiclib \
                -isysroot "" \
                -all_load libpython3.0.a -Wl,-single_module \
                -install_name
/Library/Frameworks/Python.framework/Versions/3.0/Python \
                -compatibility_version 3.0 \
                -current_version 3.0; \
        else \
        /usr/bin/libtool -o Python.framework/Versions/3.0/Python
-dynamic  libpython3.0.a \
                 -lSystem -lSystemStubs -arch_only ppc -install_name
/Library/Frameworks/Python.framework/Versions/3.0/Python
-compatibility_version 3.0 -current_version 3.0 ;\
fi
ld: Undefined symbols:
___eprintf
/usr/bin/libtool: internal link edit command failed
make: *** [Python.framework/Versions/3.0/Python] Error 1
msg70942 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2008-08-09 17:31
Are you sure you are using the correct compiler (i.e. from the XCode
release relevant for your operating system version)?
msg70951 - (view) Author: Barry Alan Scott (barry-scott) * Date: 2008-08-09 19:02
As far as I know I'm using the Xcode compiler. Does this match
your expectations?

$ which gcc
/usr/bin/gcc

$ gcc -v
Using built-in specs.
Target: powerpc-apple-darwin8
Configured with: /private/var/tmp/gcc/gcc-5341.obj~1/src/configure
--disable-checking -enable-werror --prefix=/usr --mandir=/share/man
--enable-languages=c,objc,c++,obj-c++
--program-transform-name=/^[cg][^.-]*$/s/$/-4.0/
--with-gxx-include-dir=/include/c++/4.0.0 --with-slibdir=/usr/lib
--build=powerpc-apple-darwin8 --host=powerpc-apple-darwin8
--target=powerpc-apple-darwin8
Thread model: posix
gcc version 4.0.1 (Apple Computer, Inc. build 5341)
msg70963 - (view) Author: Martin v. Löwis (loewis) * (Python committer) Date: 2008-08-10 07:11
This might be a duplicate of issue 1099. Can you try building with
--enable-universalsdk ?

__eprintf should have been defined in libgcc, or else assert() should
not call it. To investigate this further, you should determine how many
copies of assert.h you have, whether they all refer to __eprintf, how
many copies of libgcc you have, whether they all define __eprintf, and
which header file and which library gets used.
msg70983 - (view) Author: Barry Alan Scott (barry-scott) * Date: 2008-08-10 15:54
I have Xcode 2.3 which is quite old.
Simple program to test assert works with my current setup.

I'm going to update to Xcode 2.5 and see what happens.
I'll report back once I've installed and rebuild python.
msg70984 - (view) Author: Barry Alan Scott (barry-scott) * Date: 2008-08-10 17:20
Xcode 2.5 solves the build issue.

I suspect you can close the 1099 saying use Xcode 2.5.

I think you can only get 2.5 by login in to the Apple developer site.
msg70995 - (view) Author: Barry Alan Scott (barry-scott) * Date: 2008-08-10 19:40
Grr... this problem is a pain... I have the __eprint undefined back...

I tried to get readline going as well and rebuilt. Couldn't get that
working then rebuilt without readline stuff and got the __eprintf.

I'm goint to have to give up on devleoping this on Mac and move to
linux. I don't have the spare time to get to the bottom of this problem.
History
Date User Action Args
2022-04-11 14:56:37adminsetgithub: 47783
2018-12-06 00:54:45mariocj89setpull_requests: + pull_request10215
2008-08-10 19:40:35barry-scottsetmessages: + msg70995
2008-08-10 17:29:45loewissetstatus: open -> closed
resolution: works for me
versions: + 3rd party, - Python 3.0
2008-08-10 17:20:35barry-scottsetmessages: + msg70984
2008-08-10 15:54:29barry-scottsetfiles: + config.log
messages: + msg70983
2008-08-10 07:12:00loewissetmessages: + msg70963
2008-08-09 19:02:44barry-scottsetmessages: + msg70951
2008-08-09 17:31:03loewissetnosy: + loewis
messages: + msg70942
2008-08-09 16:45:11barry-scottcreate