[oe] [RFC] cmake cross-compilation paths

Valentin Longchamp valentin.longchamp at epfl.ch
Wed Jun 24 12:19:21 UTC 2009


Douglas Royds wrote:
> Perhaps you need:
> 
>     -DCMAKE_FIND_ROOT_PATH="${STAGING_DIR_HOST};${STAGING_DIR_NATIVE}" 

Thank you for your input, I had come to the same value. I think this 
should be the default behaviour for cmake, and this should be pushed to 
cmake.bbclass.

It still does not work for the FindQt4 module, but this is due to the 
fact that the PATHS qmake searches for libraries and headers in are 
define at COMPILE time and cannot be changed with this value.

Val

> 
> Douglas.
> 
> 
> Valentin Longchamp wrote:
>> Hello,
>>
>> I am trying to build cmake based programs that use QT with 
>> Openembedded. The actual support for cmake in OE worked until now that 
>> I only had "simple" dependencies. Now with QT as as dependency, I use 
>> the cmake FindQt4 Module that strongly relies on qmake to find the 
>> different QT cmake variables (try to run ${STAGINGBINDIR}/qmake4 -query).
>>
>> The problem is that FindQt4 does not find the qmake4 (as I have 
>> proposed to rename it like that in my patch from yesterday) since the 
>> CMAKE_FIND_ROOT_PATH given to the cmake cmd in the 
>> classes/cmake.bbclass only is set to
>>
>> -DCMAKE_FIND_ROOT_PATH=${STAGING_DIR_HOST}
>>
>> that does not include ${STAGING_BIN_DIR}. Setting it to
>>
>> -DCMAKE_FIND_ROOT_PATH=${STAGING_DIR}
>>
>> makes configure fail (it cannot find the needed header files); and with
>>
>> -DCMAKE_FIND_ROOT_PATH="${STAGING_DIR_HOST};${STAGING_DIR}"
>>
>> qmake4 is not found either.
>>
>> So if someone who knows cmake better than me can tell me how to give 
>> two paths to a cmd -DPATH_NAME=VALUE1 VALUE2 for cmake (and what would 
>> be the equivalent to STAGING_DIR_HOST for ${STAGING_DIR}/i686-linux in 
>> my case) that would help a lot (I am not sure it can be achieved).
>>
>> All the inputs are greatly appreciated and if you could help me for 
>> the OE var names (especially for the equivalent to ${STAGING_DIR_HOST} 
>> that would point to ${STAGING_DIR}/i686-linux, that would already be a 
>> good start)
>>
>> Thanks a lot
>>


-- 
Valentin Longchamp, PhD Student, EPFL-STI-LSRO1
valentin.longchamp at epfl.ch, Phone: +41216937827
http://people.epfl.ch/valentin.longchamp
MEA3485, Station 9, CH-1015 Lausanne




More information about the Openembedded-devel mailing list