qt 4.5 emerge problem

Patrick Spendrin ps_ml at gmx.de
Tue Mar 17 00:01:33 CET 2009


Ralf Habacker schrieb:
> Ralf Habacker schrieb:
>> Christian Ehrlicher schrieb:
>>   
>>> Ralf Habacker schrieb:
>>>   
>>>     
>>>> Hi,
>>>> which recent qt-copy sources and recent emerge sources I got several 
>>>> problems compiling qt.
>>>>
>>>> 1. fetching qt sources from svn does not work cased by the phonon/Phonon 
>>>> name clash problem
>>>>
>>>> in qt-4.5.0.20090213.py there is
>>>>
>>>>     def unpack( self ):
>>>>         utils.cleanDirectory( self.workdir )
>>>>         # unpack our two external dependencies
>>>>         thirdparty_dir = os.path.join( self.workdir, "3rdparty" )
>>>>         files = [ os.path.basename( self.openssl ) ]
>>>>         files.append( os.path.basename( self.dbuslib ) )
>>>>         if not utils.unpackFiles( self.downloaddir, files, thirdparty_dir ):
>>>>             return False
>>>>
>>>>         # and now qt
>>>>         if self.buildTarget == "4.4":
>>>>           self.kdeSvnUnpack() or utils.die( "kdeSvnUnpack failed" )
>>>>         else:
>>>>           self.kdeSvnUnpack() or utils.die( "kdeSvnUnpack failed" )
>>>>           # unpack all subdirs except 'include'
>>>>           svnpath = os.path.join( self.kdesvndir, self.kdeSvnPath() )
>>>>
>>>> The line after the last else
>>>>
>>>>           self.kdeSvnUnpack() or utils.die( "kdeSvnUnpack failed" )
>>>>
>>>>
>>>> tries to check out complete qt-copy, which fails - I guess this line 
>>>> should probably checkout qt-copy top level dir without any subdir.
>>>> On my installation commenting out this line helps because the files in 
>>>> the top level dir are already checked out.
>>>> The question is how to limit kdeSvnUnpack not to recurse into the sub 
>>>> directory.
>>>>
>>>> 2. After configure applying the patches failed when py extension is not 
>>>> registered
>>>> old
>>>> 71:        cmd = "apply_patches.py"
>>>>
>>>> This issue could be fixed by the following change
>>>> 71:        cmd = "python apply_patches.py"
>>>>
>>>>
>>>> 3. src\corelib compile error
>>>>
>>>>  E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\bin\qmake 
>>>> E:\downloads\kdesvn\trunk\qt-copy\src\corelib\corelib.pro  -o Makefile 
>>>> -spec win32-msvc2005
>>>>         nmake -f Makefile
>>>>         nmake -f Makefile.Debug
>>>>         cl -c -Yc -Fptmp\obj\debug_shared\QtCored_pch.pch 
>>>> -Fotmp\obj\debug_shared\QtCored_pch.obj -nologo -Zm200 -Zc:wchar_t- -Zi 
>>>> -MDd -W3 -w34100 -w34189 -GR -EHsc -DQT_
>>>> SHARED -DQT_THREAD_SUPPORT -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT 
>>>> -DQT_BUILD_CORE_LIB -DQT_NO_USING_NAMESPACE -DQT_MAKEDLL 
>>>> -DQT_ASCII_CAST_WARNINGS -DQT3_SUPPORT -DQT_M
>>>> OC_COMPAT -D_USE_MATH_DEFINES -DHB_EXPORT=Q_CORE_EXPORT -DQT_DLL 
>>>> -I"..\..\include" 
>>>> -I"e:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\3rdparty\include" 
>>>> -I"..\..\include\QtCore" -I"tmp\rcc\debug_shared" -I"tmp" 
>>>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\corelib\concurrent" -I"global" 
>>>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\3rdparty\zlib" 
>>>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\3rdparty\harfbuzz\src" 
>>>> -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" 
>>>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\corelib" -I"." 
>>>> -I"e:\downloads\kdesvn\trunk\qt-copy\mkspecs\win32-msvc2005" -TP 
>>>> e:\downloads\kdesvn\trunk\qt-copy\src\corelib\global\qt_pch.h qt_pch.h
>>>> NMAKE : fatal error U1073: don't know how to make 
>>>> '..\downloads\kdesvn\trunk\qt-copy\src\qt3support\tools\q3cstring.h'
>>>> Stop.
>>>> emerge fatal error: os.system ( nmake ) failed
>>>> emerge fatal error: running python 
>>>> e:\daten\kde\emerge-msvc-root\emerge\portage\libs\qt\qt-4.5.0.20090213.py 
>>>> compile
>>>> emerge error: fatal error: package libs/qt-4.5.0.20090213 all failed
>>>> 22:09
>>>>
>>>> Digging into the related Makefile shows that the following line(s) isn't 
>>>> generated correctly
>>>>
>>>> src\corelib\Makefile.Debug
>>>> ...
>>>>         ..\downloads\kdesvn\trunk\qt-copy\src\qt3support\tools\q3cstring.h \
>>>> ...
>>>> The path layout is
>>>> buildroot = e:\daten\kde\emerge-msvc-root
>>>> srcroot = e:\downloads\kdesvn\trunk\qt-copy
>>>>
>>>> changing the related lines to
>>>>         e:\downloads\kdesvn\trunk\qt-copy\src\qt3support\tools\q3cstring.h \
>>>>
>>>> fixes the compile problem.
>>>>
>>>> 4. qmake problem
>>>>         
>>>> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\bin\qmake 
>>>> E:\downloads\kdesvn\trunk\qt-copy\src\xml\xml.pro  -o Makefile -
>>>> spec win32-msvc2005
>>>> Could not find mkspecs for your QMAKESPEC(win32-msvc2005) after trying:
>>>>         
>>>> e:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\image-msvc2005\\mkspecs
>>>> Error processing project file: 
>>>> E:/downloads/kdesvn/trunk/qt-copy/src/xml/xml.pro
>>>> NMAKE : fatal error U1077: 
>>>> 'E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\bin\qmake' 
>>>> : return code '0x3'
>>>> Stop.
>>>> NMAKE : fatal error U1077: 'cd' : return code '0x2'
>>>> Stop.
>>>>
>>>> Also setting QMAKESPEC by hand like shown below did not help
>>>> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005>set 
>>>> QMAKESPEC=E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\mkspecs
>>>>
>>>> The only workaround I found was setting -spec by hand
>>>> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\src\gui>qmake 
>>>> E:\downloads\kdesvn\trunk\qt-copy\src\gui\gui.pro -o Makefile -spec
>>>> ..\..\mkspecs\win32-msvc2005
>>>>
>>>> Unfortunally then issue 3 was triggered again
>>>>
>>>> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\src\gui>nmake
>>>>         nmake -f Makefile.Debug
>>>> NMAKE : fatal error U1073: don't know how to make 
>>>> '..\downloads\kdesvn\trunk\qt-copy\src\qt3support\tools\q3cstring.h'
>>>> Stop.
>>>>
>>>> which requires to manually edit the related Makefile.Debug
>>>>
>>>> Any idea how to fix issue 1, 3 and 4 ?
>>>>
>>>>     
>>>>       
>>> Remove old qt-copy checkout and try again.
>>>   
>>>     
>> issue 1 is gone - the reason was that simply removing the include subdir 
>> does not help because the include path is still in the svn checkout 
>> information, which let the first checkout command fail - thanks.
>>
>> issue 3 is still there now with a different file  name
>>
>> cd src\corelib\ && nmake -f Makefile
>> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\bin\qmake 
>> E:\downloads\kdesvn\trunk\qt-copy\src\corelib\corelib.pro  -o Makefile 
>> -spec win32-msvc2005
>> nmake -f Makefile
>> nmake -f Makefile.Debug
>>
>> cl -c -Yc -Fptmp\obj\debug_shared\QtCored_pch.pch 
>> -Fotmp\obj\debug_shared\QtCored_pch.obj -nologo -Zm200 -Zc:wchar_t- -Zi 
>> -MDd -W3 -w34100 -w34189 -GR -EHsc -DQT_SHARED -DQT_THREAD_SUPPORT 
>> -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DQT_BUILD_CORE_LIB 
>> -DQT_NO_USING_NAMESPACE -DQT_MAKEDLL -DQT_ASCII_CAST_WARNINGS 
>> -DQT3_SUPPORT -DQT_MOC_COMPAT -D_USE_MATH_DEFINES 
>> -DHB_EXPORT=Q_CORE_EXPORT -DQT_DLL -I"..\..\include" 
>> -I"e:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\3rdparty\include" 
>> -I"..\..\
>> include\QtCore" -I"tmp\rcc\debug_shared" -I"tmp" 
>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\corelib\concurrent" -I"global" 
>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\3rdparty
>> \zlib" -I"e:\downloads\kdesvn\trunk\qt-copy\src\3rdparty\harfbuzz\src" 
>> -I"..\..\include\ActiveQt" -I"tmp\moc\debug_shared" 
>> -I"e:\downloads\kdesvn\trunk\qt-copy\src\coreli
>> b" -I"." -I"e:\downloads\kdesvn\trunk\qt-copy\mkspecs\win32-msvc2005" 
>> -TP e:\downloads\kdesvn\trunk\qt-copy\src\corelib\global\qt_pch.h
>> qt_pch.h
>> NMAKE : fatal error U1073: don't know how to make 
>> '..\downloads\kdesvn\trunk\qt-copy\src\corelib\io\qiodevice.h'
>>
>> The error could be fixed by changing the related path in Makefile.debug to
>> 'e:\downloads\kdesvn\trunk\qt-copy\src\corelib\io\qiodevice.h'
>>   
> here too
> 
>         cd src\network\ && nmake -f Makefile
>         
> E:\daten\kde\emerge-msvc-root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005\bin\qmake 
> E:\downloads\kdesvn\trunk\qt-copy\src\n
> kefile -spec win32-msvc2005
>         nmake -f Makefile
>         nmake -f Makefile.Debug
> 
> NMAKE : fatal error U1073: don't know how to make 
> '..\downloads\kdesvn\trunk\qt-copy\src\corelib\tools\qstring.h'
>> Ralf
I had similar problems, it might be a problem in qmake in the end...
As far as I understood from what a QtSw employee told me, the problem
might be that source directory and build directory are not on the same
level. In the end I got myself junction from sysinternals and moved my
source dir with it:
from
D:\sources to D:\cygopt\tempdownload\sources\trunk\qt-copy\
(the build directory is
D:\cygopt\root\tmp\qt-4.5.0.20090213\work\qt-win-opensource-src-msvc2005)
which in the end worked quite well.

regards,
Patrick
>>   
> 
> _______________________________________________
> Kde-windows mailing list
> Kde-windows at kde.org
> https://mail.kde.org/mailman/listinfo/kde-windows
> 


-- 
web:                 http://windows.kde.org
mailing list:        kde-windows at kde.org
irc:                 #kde-windows (irc.freenode.net)


More information about the Kde-windows mailing list