[PyQt] SIP cross compile LINK macro not working properly

Phil Thompson phil at riverbankcomputing.com
Sat Jan 28 11:46:28 GMT 2017


On 25 Jan 2017, at 11:31 am, Jakob Simon-Gaarde <jakobsg at gmail.com> wrote:
> 
> I am trying to compile SIP in Yocto and for that I use a cross compiler. To tell sip configure that I wanna use another toolchain I use the CC, CXX and LINK macros.
> 
> For some reason the LINK macro is not propogated all the way through to the siplib Makefile. Does anyone know why?
> 
> 
> 
> $ python configure.py CC=mygcc CXX=myg++ LINK=myg++
> This is SIP 4.19 for Python 2.7.12 on linux2.
> The SIP code generator will be installed in /usr/bin.
> The sip module will be installed in /usr/lib/python2.7/dist-packages.
> The sip.pyi stub file will be installed in /usr/lib/python2.7/dist-packages.
> The sip.h header file will be installed in /usr/include/python2.7.
> The default directory to install .sip files in is /usr/share/sip.
> Creating siplib/sip.h...
> Creating siplib/siplib.c...
> Creating siplib/siplib.sbf...
> Creating sipconfig.py...
> Creating top level Makefile...
> Creating sip code generator Makefile...
> Creating sip module Makefile...
> 
> 
> $ head sipgen/Makefile 
> TARGET = sip
> OFILES = main.o transform.o gencode.o extracts.o export.o type_hints.o heap.o parser.o lexer.o
> HFILES = sip.h parser.h
> 
> CC = mygcc
> CXX = myg++
> LINK = myg++
> CPPFLAGS = -DNDEBUG -I.
> CFLAGS = -pipe -O2 -Wall -W
> CXXFLAGS = -pipe -O2 -Wall -W
> 
> 
> $ head siplib/Makefile 
> TARGET = sip.so
> OFILES = siplib.o apiversions.o descriptors.o qtlib.o threads.o objmap.o voidptr.o array.o bool.o
> HFILES = sip.h sipint.h array.h 
> 
> CC = mygcc
> CXX = myg++
> LINK = g++  <----------------------------------------- Why?
> CPPFLAGS = -DNDEBUG -I. -I/usr/include/python2.7
> CFLAGS = -pipe -fPIC -O2 -Wall -W
> CXXFLAGS = -pipe -fPIC -O2 -Wall -W

You also need LINK_SHLIB=myg++

Phil


More information about the PyQt mailing list