Skip to content

SCons fails when a node depends on a binary #3093

@bdbaddog

Description

@bdbaddog

This issue was originally created at: 2018-01-08 07:41:39.
This issue was reported by: mali80.
mali80 said at 2018-01-08 07:41:39

SCons fails when a node depends on a binary. When it tries to decode the content of the binary as ascii it fails with:

UnicodeDecodeError : 'ascii' codec can't decode byte 0xc8 in position 40: ordinal not in range(128)

mali80 said at 2018-01-08 07:42:44

Created an attachment (id=973)
C++ source code for application

mali80 said at 2018-01-08 07:43:17

Created an attachment (id=974)
SConstruct to make "scons run" fail

mali80 said at 2018-01-08 07:46:59

Putting Sconstruct and main.cpp into empty folder and invoking "scons run" gives me the error using
SCons v3.0.1 (works with 2.3.0) on Ubuntu 14.04

SCons by Steven Knight et al.:
	script: v3.0.1.74b2c53bc42290e911b334a6b44f187da698a668, 2017/11/14 13:16:53,
by bdbaddog on hpmicrodog
	engine: v3.0.1.74b2c53bc42290e911b334a6b44f187da698a668, 2017/11/14 13:16:53,
14.04by bdbaddog on hpmicrodog

mali80 said at 2018-01-08 07:49:38

Stacktrace:

UnicodeDecodeError : 'ascii' codec can't decode byte 0xc8 in position 40: ordinal not in range(128)
scons: internal stack trace:
  File "scons-3.0.1/script/../engine/SCons/Job.py", line 387, in start
    task.prepare()
  File "scons-3.0.1/script/../engine/SCons/Script/Main.py", line 175, in prepare
    return SCons.Taskmaster.OutOfDateTask.prepare(self)
  File "scons-3.0.1/script/../engine/SCons/Taskmaster.py", line 179, in prepare
    self.exception_raise()
  File "scons-3.0.1/script/../engine/SCons/Taskmaster.py", line 550, in _exception_raise
    exec("raise exc_type, exc_value, exc_traceback")
  File "scons-3.0.1/script/../engine/SCons/Taskmaster.py", line 973, in next_task
    task.make_ready()
  File "scons-3.0.1/script/../engine/SCons/Script/Main.py", line 309, in make_ready
    SCons.Taskmaster.OutOfDateTask.make_ready(self)
  File "scons-3.0.1/script/../engine/SCons/Taskmaster.py", line 409, in make_ready_current
    t.disambiguate().make_ready()
  File "scons-3.0.1/script/../engine/SCons/Node/Python.py", line 102, in make_ready
    self.get_csig()
  File "scons-3.0.1/script/../engine/SCons/Node/Python.py", line 163, in get_csig
    contents = self.get_contents()
  File "scons-3.0.1/script/../engine/SCons/Node/Python.py", line 140, in get_contents
    text_contents = self.get_text_contents()
  File "scons-3.0.1/script/../engine/SCons/Node/Python.py", line 136, in get_text_contents
    contents = contents + kid.get_contents().decode()
scons: building terminated because of errors.

bdbaddog said at 2018-01-08 07:50:43

Please bring this issue to the scons users mailing list per the bug policy.

http://scons.org/bugs.html

I'm marking this bug invalid for the moment. If the users group discussion yields this is a valid (and as yet unfiled) bug, then we'll reopen this bug. Also you failed to select the version of python under "Platform" above.

mali80 said at 2018-01-09 00:29:47

Uh, but I asked for this behavior on the mailing list and was directed here?

bdbaddog said at 2018-01-09 05:30:04

Are you mpac1234?

mali80 said at 2018-01-09 11:41:54

Oops, my apologies. Yes, I am mpac1234 and mali80.

mali80 said at 2018-01-09 11:50:26

The issue occurs on Arch Linux also, with Python 3.6.4 (scons version same as above)

bdbaddog said at 2018-01-09 12:31:40

Reopening. Didn't connect your user name with mailing list thread.

mali80 said at 2018-01-09 23:24:43

Python version used on Ubuntu 14.04 was Python 2.7.6

mali80 said at 2018-01-09 23:30:44

Issue does also occur on Windows 7, Python 2.7.14, same SCons version

mali80 said at 2018-01-09 23:32:14

Issue does not occur with earlier SCons version (tried 2.3.0, 2.5.1)

mali80 said at 2018-01-10 01:48:08

Created an attachment (id=975)
The SConstruct I uploaded earlier does evoke the issue, but it does not what it was intended to: run the program each time "scons run" is invoked. This SConstruct does this.

mali80 attached main.cpp at 2018-01-08 07:42:44.

C++ source code for application

mali80 attached SConstruct at 2018-01-08 07:43:16.

SConstruct to make "scons run" fail

mali80 attached SConstruct at 2018-01-10 01:48:08.

The SConstruct I uploaded earlier does evoke the issue, but it does not what it was intended to: run the program each time "scons run" is invoked. This SConstruct does this.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions