Distutils gcc error

Discussion in 'Python' started by Brian Victor, Jul 14, 2003.

  1. Brian Victor

    Brian Victor Guest

    I am attempting to distribute my wxPython program with the aid of
    distutils. I have one C++ module that needs to built on the user's
    machine. When I run "./setup.py build", the following appears on the
    terminal:

    gcc -DNDEBUG -DNDEBUG -g -O3 -Wall -Wstrict-prototypes
    -fno-strict-aliasing -fPIC -Isrc -I/usr/include/python2.2 -c src/bwaa.cc
    -o build/temp.linux-ppc-2.2/bwaa.o -I/usr/local/lib/wx/include/gtk-2.4
    -DGTK_NO_CHECK_CASTS -D__WXGTK__ -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES
    [snip]
    /usr/local/include/wx/setup.h:15: #error No __WXxxx__ define set! Please
    define one of
    __WXBASE__,__WXGTK__,__WXMSW__,__WXMOTIF__,__WXMAC__,__WXQT__,__WXPM__,__WXSTUBS__

    That error message is consistent with failure to define __WXGTK__.
    However, that macro is clearly defined on the command line, and copying
    and pasting that line into the terminal causes the build to succeed.
    Why would that be?

    This is how I have the extention defined in my setup.py file:

    wxlibs = commands.getoutput("wx-config --libs")
    wxcxxflags = commands.getoutput("wx-config --cxxflags")

    bwaaext = Extension("bwaascalec", ["src/bwaa.cc", "src/bwaascale.cc"],
    include_dirs=["src"],
    extra_link_args=[wxlibs],
    extra_compile_args=[wxcxxflags])
    [snip]
    ext_modules=[bwaaext])

    If anyone can point me to a fix, I would appreciate it. Thanks in advance!

    --
    Brian
    Brian Victor, Jul 14, 2003
    #1
    1. Advertising

  2. Brian Victor

    Brian Victor Guest

    Following up to myself for googling purposes.

    Brian Victor wrote:
    > wxlibs = commands.getoutput("wx-config --libs")
    > wxcxxflags = commands.getoutput("wx-config --cxxflags")
    >
    > bwaaext = Extension("bwaascalec", ["src/bwaa.cc", "src/bwaascale.cc"],
    > include_dirs=["src"],
    > extra_link_args=[wxlibs],
    > extra_compile_args=[wxcxxflags])


    The compiler was taking the chunk of arguments returned by wx-config as
    one large, nonsensical argument. This is solved by using:

    extra_link_args=wxlibs.split(),
    extra_compile_args=wxcxxflags.split())

    --
    Brian
    Brian Victor, Jul 15, 2003
    #2
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Replies:
    8
    Views:
    413
  2. Kevin P. Fleming

    C99 structure initialization in gcc-2.95.3 vs gcc-3.3.1

    Kevin P. Fleming, Nov 6, 2003, in forum: C Programming
    Replies:
    2
    Views:
    630
    Kevin P. Fleming
    Nov 6, 2003
  3. timw.google
    Replies:
    1
    Views:
    511
    Serge Orlov
    May 11, 2006
  4. Giovanni Bajo
    Replies:
    3
    Views:
    396
    David Rushby
    Mar 23, 2007
  5. Luis Alberto Zarrabeitia Gomez

    distutils, No module named numpy.distutils.fcompiler.conv_template

    Luis Alberto Zarrabeitia Gomez, Mar 30, 2009, in forum: Python
    Replies:
    0
    Views:
    1,284
    Luis Alberto Zarrabeitia Gomez
    Mar 30, 2009
Loading...

Share This Page