2016-04-03 19 views
5

Jest to w zasadzie takie samo, jak this one, które tak naprawdę nie zakończyło się.Alien :: instalacja wxWidgets kończy się niepowodzeniem na OSX 10

Mam do czynienia z tym samym problemem i poszedłem trochę dalej. Musiałem zmienić kod, aby umożliwić nowszą wersję sdk dla MacOS (10.11). Więc to skompilowane przez chwilę, ale potem udało pokojowe to:

❯❯❯ perl build 
Building Alien-wxWidgets 
/Users/guiohm/.cpan/build/Alien-wxWidgets-0.67-rVjMTK/wxWidgets-3.0.2/bld/bk-deps clang -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -mmacosx-version-min=10.7 -c -o wxtiff_tif_lzma.o -DNDEBUG -I../src/jpeg -I/Users/guiohm/.cpan/build/Alien-wxWidgets-0.67-rVjMTK/wxWidgets-3.0.2/bld/src/tiff/libtiff -I../src/tiff/libtiff -dynamic -fPIC -DPIC -D_FILE_OFFSET_BITS=64 -I/Users/guiohm/.cpan/build/Alien-wxWidgets-0.67-rVjMTK/wxWidgets-3.0.2/bld/lib/wx/include/osx_cocoa-unicode-3.0 -I../include -Wall -Wundef -O2 -fno-strict-aliasing -fno-common ../src/tiff/libtiff/tif_lzma.c 
../src/tiff/libtiff/tif_lzma.c:38:10: fatal error: 'lzma.h' file not found 
#include "lzma.h" 
     ^
1 error generated. 
make: *** [wxtiff_tif_lzma.o] Error 1 
system: make all: 512 at build line 68. 

❯❯❯ brew search 
lzma is now part of the xz formula. 

❯❯❯ brew info 
xz: stable 5.2.2 (bottled) 
General-purpose data compression with high compression ratio 
http://tukaani.org/xz/ 
/usr/local/Cellar/xz/5.2.2 (91 files, 1.4M) * 
    Poured from bottle 
From: https://github.com/Homebrew/homebrew-core/blob/master/Formula/xz.rb 
==> Options 
--universal 
    Build a universal binary 

❯❯❯ brew install xz 
Warning: xz-5.2.2 already installed 

❯❯❯ find/-name "lzma.h" 
/usr/local/Cellar/xz/5.2.2/include/lzma.h 
/usr/local/include/lzma.h 

❯❯❯ ll /usr/local/include/lzm* 
lrwxr-xr-x 1 guiohm admin 31 Oct 11 15:58 /usr/local/include/lzma -> ../Cellar/xz/5.2.2/include/lzma 
lrwxr-xr-x 1 guiohm admin 33 Oct 11 15:58 /usr/local/include/lzma.h -> ../Cellar/xz/5.2.2/include/lzma.h 

Najdziwniejsze jest to, kiedy sprawdzane dzienniki config: ten jeden (./wxWidgets-3.0.2/bld/src/tiff/config.log) ma inne błędy niż LZMA, na przykład:

configure:18047: checking for lzma_code in -llzma 
configure:18072: clang -o conftest -g -O2 -Wall -W -stdlib=libc++ conftest.c -llzma -ljpeg -lz >&5 
configure:18072: $? = 0 
configure:18081: result: yes 
configure:18096: checking lzma.h usability 
configure:18096: clang -c -g -O2 -Wall -W conftest.c >&5 
configure:18096: $? = 0 
configure:18096: result: yes 
configure:18096: checking lzma.h presence 
configure:18096: clang -E conftest.c 
configure:18096: $? = 0 
configure:18096: result: yes 
configure:18096: checking for lzma.h 
configure:18096: result: yes 
configure:18199: checking for X 
configure:18307: clang -E conftest.c 
conftest.c:89:10: fatal error: 'X11/Xlib.h' file not found 
#include <X11/Xlib.h> 
     ^
1 error generated. 
configure:18307: $? = 1 
configure: failed program was: 
| /* confdefs.h */ 
| #define PACKAGE_NAME "LibTIFF Software" 
| #define PACKAGE_TARNAME "tiff" 

See the full version.

Odpowiada mniej więcej tak samo z ./wxWidgets-3.0.2/bld/config.log.

Po zmianie kodu, aby umożliwić os10.10 SDK, oczekiwano wcześniej do 10,8 lub 10,9. Przypuszczam, że cały problem pochodzi właśnie z tego. Czy powinienem spróbować pobrać stary zestaw SDK do systemu MacOS?

Po prostu chcę skompilować Slic3r --gui ze źródła, co wymaga Wx, co wymaga wxwidgets.

+0

A oto pełna '/ wxWidgets-3.0.2/BLD/config.log'. Http://pastebin.com/raw/6d3zBSbj – guiohm

+0

dziwne, można spróbować skompilować wxWidgets ręcznie, tj. bez automatyzacji? Po prostu wykonaj .../configure && make && make install. – Igor

+1

'brew uninstall xz' naprawił to dla mnie. źródło: https://bugs.launchpad.net/kicad/+bug/1285317 – bits

Odpowiedz

2

Problem polega na tym, że libtiff configure wykrywa lzma.h pod /usr/local ponieważ nie używa -isysroot, jednak jego kompilacja robi, bo z opcją SDK, a nie go znaleźć. Właściwym rozwiązaniem byłoby jawne użycie polecenia -I/usr/local/include w konfiguracji wxWidgets, ale na razie powinieneś być w stanie obejść ten problem, wykonując export CPATH=/usr/local/include LIBRARY_PATH=/usr/local/lib, aby go ominąć.

Alternatywnie (i najlepiej IMHO), wykonaj brew install tiff jpeg png (nie wiesz, czy nazwy formuł są poprawne, sprawdź je), aby w pierwszej kolejności nie budować wbudowanych wersji tych bibliotek.

Powiązane problemy