[Scons-users] Error when passing from python 3.5.4 to python 3.6

Pierre-Luc Boily pierreluc.boily at gmail.com
Thu Jul 23 15:02:57 EDT 2020


Could you point me out the link please?  On the issues page?
https://github.com/SCons/scons/issues  ?

Le jeu. 23 juill. 2020, à 14 h 30, Bill Deegan <bill at baddogconsulting.com>
a écrit :

> Can you push up a TINY example to github so we can try running it?
>
> On Thu, Jul 23, 2020 at 11:18 AM Pierre-Luc Boily <
> pierreluc.boily at gmail.com> wrote:
>
>> I progressed a bit,
>>
>> If I do this :
>>
>> env['QT_UICCOM'] = [['$QT_UIC', '$QT_UICDECLFLAGS', '-o',
>> '${TARGETS[0]}', '$SOURCE']]
>>
>> It works a little bit better, the action is not truncated anymore.
>>
>> But somehow, somewhere, scons still have the original tool chain with 3
>> actions.  See traces below :
>>
>> scons: Reading SConscript files ...
>> scons: done reading SConscript files.
>> scons: Building targets ...
>> Building build\sr\speech\ASREngineSpawner\ui_ASREngineWidget.h with
>> action:
>>   UnlinkFunc(target, source, env)
>> Building build\sr\speech\ASREngineSpawner\ui_ASREngineWidget.h and
>> build\sr\speech\ASREngineSpawner\uic_ASREngineWidget.cc and
>> build\sr\speech\ASREngineSpawner\moc_ASREngineWidget.cc with action:
>>   $QT_UIC $QT_UICDECLFLAGS -o ${TARGETS[0]} $SOURCE
>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>> -o build\sr\speech\ASREngineSpawner\ui_ASREngineWidget.h
>> sr\speech\ASREngineSpawner\ASREngineWidget.ui
>> scons:
>> `build\sr\speech\ASREngineSpawner\MSVC14.1\x86\release\ASREngineSpawner.obj'
>> is up to date.
>> scons: done building targets.
>>
>> Even if  ui_ASREngineWidget.h has been generated, the next build is not
>> up to date, because scons tries to generate  uic_ASREngineWidget.cc, even
>> if the generation of this file has been removed from  QT_UICCOM.
>>
>> Le jeu. 23 juill. 2020, à 08 h 52, Pierre-Luc Boily <
>> pierreluc.boily at gmail.com> a écrit :
>>
>>> scons: Reading SConscript files ...
>>> scons: done reading SConscript files.
>>> scons: Building targets ...
>>> Building build\sr\speech\ASREngineSpawner\ASREngineWidget.h and
>>> build\sr\speech\ASREngineSpawner\uic_ASREngineWidget.cc and
>>> build\sr\speech\ASREngineSpawner\moc_ASREngineWidget.cc with action:
>>>   $QT_BINPATH\uic
>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>>>
>>> What I am trying to do (override QT_UICCOM ) by doing this :
>>>
>>> env['QT_UICCOM'] = env['QT_UICCOM'][0]
>>>
>>> is clearly not working
>>>
>>>
>>> Le mer. 22 juill. 2020, à 21 h 06, Bill Deegan <
>>> bill at baddogconsulting.com> a écrit :
>>>
>>>> run with --debug=presub and paste
>>>>
>>>> On Wed, Jul 22, 2020 at 9:48 AM Pierre-Luc Boily <
>>>> pierreluc.boily at gmail.com> wrote:
>>>>
>>>>> Not the first time and I guess not the last, but I think I don't see
>>>>> something that should be easy.  From  QT_UICCOM, I only need the first
>>>>> action.  So, what I try to do is to override  QT_UICCOM with  QT_UICCOM[0],
>>>>> but this is not working, the uic action is truncated.
>>>>>
>>>>> If you look at the trace below,   The result of the print of
>>>>> QT_UICCOM[0]  is not the same as if I print the whole  QT_UICCOM list. I
>>>>> mean,  QT_UICCOM  contains commas between arguments.   QT_UICCOM[0]
>>>>> arguments are not separated by command.  I am suspecting it could be my
>>>>> problem.
>>>>>
>>>>> Traces:
>>>>> -------------------------------
>>>>> scons: Reading SConscript files ...
>>>>>
>>>>> [['$QT_UIC', '$QT_UICDECLFLAGS', '-o', '${TARGETS[0]}', '$SOURCE'],
>>>>> ['$QT_UIC', '$QT_UICIMPLFLAGS', '-impl', '${TARGETS[0].file}', '-o',
>>>>> '${TARGETS[1]}', '$SOURCE'], ['$QT_MOC', '$QT_MOCFROMHFLAGS', '-o',
>>>>> '${TARGETS[2]}', '${TARGETS[0]}']]
>>>>>
>>>>> $QT_UIC $QT_UICDECLFLAGS -o ${TARGETS[0]} $SOURCE
>>>>>
>>>>> scons: done reading SConscript files.
>>>>> scons: Building targets ...
>>>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>>>>> UIC_ARG_IS_MISSING_HERE
>>>>> ---------------------------------
>>>>>
>>>>>
>>>>> Code :
>>>>>
>>>>> print('')
>>>>> print(env['QT_UICCOM'])
>>>>> print('')
>>>>> print(env['QT_UICCOM'][0])
>>>>> print('')
>>>>>
>>>>> env['QT_UICCOM'] = env['QT_UICCOM'][0]
>>>>>
>>>>> lib_tgt = env.Library(target='lib',
>>>>>                       source=['ASREngineSpawner.cpp', 'ProcessManager.cpp', 'ASREngineWidget.ui'])
>>>>>
>>>>>
>>>>> Le mar. 21 juill. 2020, à 19 h 34, Bill Deegan <
>>>>> bill at baddogconsulting.com> a écrit :
>>>>>
>>>>>> Yes.
>>>>>> Change it in your Environment() in your SConstruct/SConscripts..
>>>>>>
>>>>>> On Tue, Jul 21, 2020 at 1:16 PM Pierre-Luc Boily <
>>>>>> pierreluc.boily at gmail.com> wrote:
>>>>>>
>>>>>>> The problem is still there with scons 4.0.1, but I decided to use qt
>>>>>>> tool that ships with scons.  I was not even aware of this, we were using
>>>>>>> the external tool since forever....
>>>>>>>
>>>>>>> But I still do have a weird problem.  It looks like scons Uic does
>>>>>>> something that I don't need, the -impl option.  It looks like it is not
>>>>>>> part of the Uic application that ships with my version of qt.  Is there a
>>>>>>> way to remove the --impl from 'QT_UICCOM': ?
>>>>>>>
>>>>>>> scons: done reading SConscript files.
>>>>>>> scons: Building targets ...
>>>>>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>>>>>>> -o build\sr\speech\ASREngineSpawner\ASREngineWidget.h
>>>>>>> sr\speech\ASREngineSpawner\ASREngineWidget.ui
>>>>>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>>>>>>> -impl ASREngineWidget.h -o
>>>>>>> build\sr\speech\ASREngineSpawner\uic_ASREngineWidget.cc
>>>>>>> sr\speech\ASREngineSpawner\ASREngineWidget.ui
>>>>>>> Unknown option 'impl'.
>>>>>>> scons: *** [build\sr\speech\ASREngineSpawner\ASREngineWidget.h]
>>>>>>> Error 1
>>>>>>> scons: building terminated because of errors.
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> PS C:\SVN\products\faa_mx\integ-newScons.4.0>
>>>>>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic
>>>>>>> -help
>>>>>>> Usage:
>>>>>>> C:\svn\3rdParty\3rdPartyPackages\Qt-5.12.1_vs2017\5.12.1\msvc2017\bin\uic.exe
>>>>>>> [options] [uifile]
>>>>>>> Qt User Interface Compiler version 5.12.1
>>>>>>>
>>>>>>> Options:
>>>>>>>   -?, -h, --help                Displays this help.
>>>>>>>   -v, --version                 Displays version information.
>>>>>>>   -d, --dependencies            Display the dependencies.
>>>>>>>   -o, --output <file>           Place the output into <file>
>>>>>>>   -p, --no-protection           Disable header protection.
>>>>>>>   -n, --no-implicit-includes    Disable generation of
>>>>>>> #include-directives.
>>>>>>>   -s, --no-stringliteral        Deprecated. The use of this option
>>>>>>> won't take
>>>>>>>                                 any effect.
>>>>>>>   --postfix <postfix>           Postfix to add to all generated
>>>>>>> classnames.
>>>>>>>   --tr, --translate <function>  Use <function> for i18n.
>>>>>>>   --include <include-file>      Add #include <include-file> to
>>>>>>> <file>.
>>>>>>>   -g, --generator <java|cpp>    Select generator.
>>>>>>>   --idbased                     Use id based function for i18n
>>>>>>>
>>>>>>> Le lun. 20 juill. 2020, à 23 h 45, Pierre-Luc Boily <
>>>>>>> pierreluc.boily at gmail.com> a écrit :
>>>>>>>
>>>>>>>> Thx.  Ill try with scons 4 and with the qt tool that ships with
>>>>>>>> scons.  Let you know...
>>>>>>>>
>>>>>>>> Le lun. 20 juill. 2020, à 08 h 37, Thomas Berg <merlin66b at gmail.com>
>>>>>>>> a écrit :
>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, 18 Jul 2020 at 00:35, Pierre-Luc Boily <
>>>>>>>>> pierreluc.boily at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I was pretty sure the problem was in qt5 tool and not in scons ?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> That could very well be, but volunteers who devote their spare
>>>>>>>>> time to help may have a policy to only start helping you when you have
>>>>>>>>> upgraded to the latest version. In general it avoids wasting time on
>>>>>>>>> already solved issues.
>>>>>>>>>
>>>>>>>>> It could be that upgrading doesn't help, but things may also have
>>>>>>>>> happened in SCons that could affect this. If you still see the problem
>>>>>>>>> after upgrading you'll likely get the help you need.
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>> File "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py",
>>>>>>>>>> line 373:
>>>>>>>>>> cpp, cpp_contents, out_sources)
>>>>>>>>>> File "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py",
>>>>>>>>>> line 229:
>>>>>>>>>> if cpp and re.search(inc_moc_cpp, cpp_contents, re.M):
>>>>>>>>>> File "C:\Python\Python3.6.8\lib\re.py", line 182:
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> Regarding the error, it's similar to an issue I saw myself when
>>>>>>>>> switching to python 3. SCons has two ways to get the content of a file, one
>>>>>>>>> returns text (python unicode), and the other returns bytes. If that's the
>>>>>>>>> problem, swapping out calls to get_contents() with get_text_contents()
>>>>>>>>> might help in the tool source code.
>>>>>>>>>
>>>>>>>>> I see you are using an external qt tool instead of the one that
>>>>>>>>> ships with scons. I think the qt tool that ships with scons supports Qt5
>>>>>>>>> now, so you could consider trying it instead of this possibly unmaintained
>>>>>>>>> tool.
>>>>>>>>>
>>>>>>>>> Cheers,
>>>>>>>>> Thomas
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On Sat, 18 Jul 2020 at 00:35, Pierre-Luc Boily <
>>>>>>>>> pierreluc.boily at gmail.com> wrote:
>>>>>>>>>
>>>>>>>>>> I was pretty sure the problem was in qt5 tool and not in scons ?
>>>>>>>>>>
>>>>>>>>>> File "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py",
>>>>>>>>>> line 373:
>>>>>>>>>> cpp, cpp_contents, out_sources)
>>>>>>>>>> File "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py",
>>>>>>>>>> line 229:
>>>>>>>>>> if cpp and re.search(inc_moc_cpp, cpp_contents, re.M):
>>>>>>>>>> File "C:\Python\Python3.6.8\lib\re.py", line 182:
>>>>>>>>>>
>>>>>>>>>> Le ven. 17 juill. 2020, à 15 h 48, Bill Deegan <
>>>>>>>>>> bill at baddogconsulting.com> a écrit :
>>>>>>>>>>
>>>>>>>>>>> Please update your SCons version to 4.0.1 and retry.
>>>>>>>>>>> Note if you've installed scons via pip, you  should pip
>>>>>>>>>>> uninstall scons, and then pip install scons as there's a windows specific
>>>>>>>>>>> pip+scons issue.
>>>>>>>>>>>
>>>>>>>>>>> On Fri, Jul 17, 2020 at 9:09 AM Pierre-Luc Boily <
>>>>>>>>>>> pierreluc.boily at gmail.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Hello,
>>>>>>>>>>>>
>>>>>>>>>>>> Sorry to post this here, this is not direclty linked to scons,
>>>>>>>>>>>> but to qt5
>>>>>>>>>>>> tools.  I thought that maybe someone faced this problem before
>>>>>>>>>>>> in the scons
>>>>>>>>>>>> code.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> https://bitbucket.org/dirkbaechle/scons_qt5/issues/14/from-python-354-to-368-raise-sourceerror
>>>>>>>>>>>>
>>>>>>>>>>>> python : 3.6.8
>>>>>>>>>>>> scons : 3.0.5
>>>>>>>>>>>> os : windows 10
>>>>>>>>>>>>
>>>>>>>>>>>> Trying to update my python from 3.5.4 to 3.6.8 version and I
>>>>>>>>>>>> stumbled on the
>>>>>>>>>>>> exception below. I found something similar to this page :
>>>>>>>>>>>>
>>>>>>>>>>>> https://stackoverflow.com/questions/58328587/python-3-7-4-re-error-bad-escape-s-at-position-0
>>>>>>>>>>>> .
>>>>>>>>>>>> but I don`t understand... :
>>>>>>>>>>>>
>>>>>>>>>>>> PS C:\SVN\products\faa_mx\integ> scons -n
>>>>>>>>>>>> scons: Reading SConscript files ...
>>>>>>>>>>>> error: bad escape \m at position 37:
>>>>>>>>>>>> File "C:\SVN\products\faa_mx\integ\SConstruct", line 30:
>>>>>>>>>>>> sc_manager.build()
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "C:\SVN\products\faa_mx\integ\cm\env\scons\utilities\sconscriptManager.py",
>>>>>>>>>>>> line 44:
>>>>>>>>>>>> duplicate=0)
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Script\SConscript.py",
>>>>>>>>>>>> line 668:
>>>>>>>>>>>> return method(*args, **kw)
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Script\SConscript.py",
>>>>>>>>>>>> line 605:
>>>>>>>>>>>> return _SConscript(self.fs, files, **subst_kw)
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Script\SConscript.py",
>>>>>>>>>>>> line 286:
>>>>>>>>>>>> exec(compile(scriptdata, scriptname, 'exec'),
>>>>>>>>>>>> call_stack[-1].globals)
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "C:\SVN\products\faa_mx\integ\sr\speech\ASREngineSpawner\ASREngineSpawner.sc",
>>>>>>>>>>>> line 12:
>>>>>>>>>>>> lib_tgt = env.build_library(envService, ['ASREngineSpawner.cpp',
>>>>>>>>>>>> 'ProcessManager.cpp'] + env.Glob('.ui'))
>>>>>>>>>>>> File
>>>>>>>>>>>>
>>>>>>>>>>>> "C:\SVN\products\faa_mx\integ\cm\env\scons\adacelBuilders\pseudoBuilders.py",
>>>>>>>>>>>> line 95:
>>>>>>>>>>>> source=tgt)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Environment.py",
>>>>>>>>>>>> line 260:
>>>>>>>>>>>> return MethodWrapper.call(self, target, source, *args, **kw)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Environment.py",
>>>>>>>>>>>> line 224:
>>>>>>>>>>>> return self.method(*nargs, **kwargs)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Builder.py", line
>>>>>>>>>>>> 645:
>>>>>>>>>>>> return self.execute(env, target, source, OverrideWarner(kw),
>>>>>>>>>>>> ekw)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Builder.py", line
>>>>>>>>>>>> 564:
>>>>>>>>>>>> tlist, slist = self.create_nodes(env, target, source)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Builder.py", line
>>>>>>>>>>>> 528:
>>>>>>>>>>>> target, source = self.emitter(target=tlist, source=slist,
>>>>>>>>>>>> env=env)
>>>>>>>>>>>> File
>>>>>>>>>>>> "c:\python\python3.6.8\lib\site-packages\scons\SCons\Builder.py", line
>>>>>>>>>>>> 353:
>>>>>>>>>>>> target, source = e(target, source, env)
>>>>>>>>>>>> File
>>>>>>>>>>>> "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py", line 373:
>>>>>>>>>>>> cpp, cpp_contents, out_sources)
>>>>>>>>>>>> File
>>>>>>>>>>>> "C:\SVN\3rdParty\devTool\site_scons\site_tools\qt5_init.py", line 229:
>>>>>>>>>>>> if cpp and re.search(inc_moc_cpp, cpp_contents, re.M):
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\re.py", line 182:
>>>>>>>>>>>> return _compile(pattern, flags).search(string)
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\re.py", line 301:
>>>>>>>>>>>> p = sre_compile.compile(pattern, flags)
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\sre_compile.py", line 562:
>>>>>>>>>>>> p = sre_parse.parse(p, flags)
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\sre_parse.py", line 855:
>>>>>>>>>>>> p = _parse_sub(source, pattern, flags & SRE_FLAG_VERBOSE, 0)
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\sre_parse.py", line 416:
>>>>>>>>>>>> not nested and not items))
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\sre_parse.py", line 502:
>>>>>>>>>>>> code = _escape(source, this, state)
>>>>>>>>>>>> File "C:\Python\Python3.6.8\lib\sre_parse.py", line 401:
>>>>>>>>>>>> raise source.error("bad escape %s" % escape, len(escape))
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> Sent from: http://scons.1086193.n5.nabble.com/Users-f16930.html
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> Scons-users mailing list
>>>>>>>>>>>> Scons-users at scons.org
>>>>>>>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>>>>>>>
>>>>>>>>>>> _______________________________________________
>>>>>>>>>>> Scons-users mailing list
>>>>>>>>>>> Scons-users at scons.org
>>>>>>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Scons-users mailing list
>>>>>>>>>> Scons-users at scons.org
>>>>>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Scons-users mailing list
>>>>>>>>> Scons-users at scons.org
>>>>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>> Scons-users mailing list
>>>>>>> Scons-users at scons.org
>>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Scons-users mailing list
>>>>>> Scons-users at scons.org
>>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>>
>>>>> _______________________________________________
>>>>> Scons-users mailing list
>>>>> Scons-users at scons.org
>>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>>
>>>> _______________________________________________
>>>> Scons-users mailing list
>>>> Scons-users at scons.org
>>>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>>>
>>> _______________________________________________
>> Scons-users mailing list
>> Scons-users at scons.org
>> https://pairlist4.pair.net/mailman/listinfo/scons-users
>>
> _______________________________________________
> Scons-users mailing list
> Scons-users at scons.org
> https://pairlist4.pair.net/mailman/listinfo/scons-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://pairlist4.pair.net/pipermail/scons-users/attachments/20200723/59f333b4/attachment-0001.html>


More information about the Scons-users mailing list