wxWidgets / Phoenix

wxPython's Project Phoenix. A new implementation of wxPython, better, stronger, faster than he was before.
http://wxpython.org/
2.29k stars 516 forks source link

How to pass configuration options to pip install? #1852

Open w3sip opened 3 years ago

w3sip commented 3 years ago

Trying to build wxpython from source in pip install, and need change a few config options (such as --with-libtiff=no). Can't seem to figure out a way of doing that.

Update: I'll elaborate a bit. No matter what I've tried so far, wxpython build seems to favor system libtiff/libjpeg, rather than provided via pip install --global-option='build_ext' --global-option=-I/path/to/lib/include --global-option=-L/path/to/lib/lib

At this point I'll take either an option to disable those libraries, or to provide path to my own.

w3sip commented 3 years ago

It seems like wx build opts for using brew version of libtiff, rather than the builtin one -- and then fails to include its headers location:

2020-11-23T21:11:43.5045170Z     /private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/build/wxbld/bk-deps g++ -mmacosx-version-min=10.9 -c -o coredll_imagtiff.o    -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/jpeg -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/png -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/zlib -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/regex  -D_FILE_OFFSET_BITS=64 -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/build/wxbld/lib/wx/include/osx_cocoa-unicode-3.1 -I/private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/include  -D__WXOSX_COCOA__      -DWXBUILDING -DWXUSINGDLL -DWXMAKINGDLL_CORE -DwxUSE_BASE=0 -dynamic -fPIC -DPIC -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -Wno-deprecated-declarations -O2 -fno-common  -fvisibility=hidden -fvisibility-inlines-hidden   /private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/common/imagtiff.cpp```

```2020-11-23T21:11:43.5122500Z     /private/var/folders/fc/y0ltjlws4rvdtng1_1dy1dww0000j7/T/pip-install-8gz7mr/wxpython/ext/wxWidgets/src/common/imagtiff.cpp:40:14: fatal error: 'tiff.h' file not found
2020-11-23T21:11:43.5123130Z         #include "tiff.h"
2020-11-23T21:11:43.5123360Z                  ^~~~~~~~
2020-11-23T21:11:43.5123600Z     1 error generated.

wxBuildFailure.txt

I would really appreciate some advice -- all I need to do is to have pip install complete successfully in a specific environment. How can I get there?

RobinD42 commented 3 years ago

Currently there is the ability to pass extra args to build.py via the WXPYTHON_BUILD_ARGS environment variable, and build.py has a --extra_make flag to pass extra parameters to the wxWidgets make command, but currently there isn't a way to pass extra flags to the configure command. I'll take a look at adding that.

RobinD42 commented 3 years ago

See also #473