Ticket #1717 (closed bug: fixed)

Opened 12 years ago

Last modified 11 years ago

Parrot compilation fails on './miniparrot config_lib.pir' when there are non-ascii characters in the build path (pwd).

Reported by: dzoe Owned by: NotFound
Priority: normal Milestone:
Component: build Version: trunk
Severity: low Keywords:
Cc: Language:
Patch status: Platform: linux


I downloaded parrot-2.6.0.tar.gz into /home/joe/Stažené, unpacked it and tried building it in /home/joe/Stažené/parrot-2.6.0/.

The third path component means "Downloaded" and it is a default download location for most browsers on my platform - which is Ubuntu 10.04 on x86_64.

perl Configure.pl runs ok

make fails on:

./miniparrot -Iruntime/parrot/include config_lib.pir > runtime/parrot/include/config.fpmc Malformed string make: *** [runtime/parrot/include/config.fpmc] Error 1

When I try building it in /home/joe/Install/parrot-2.6.0, it works flawlessly.

We discussed it on #parrot and cotto found it is issue with non-ascii characters in the build path.


bugreport.txt Download (2.4 KB) - added by dzoe 12 years ago.
Bugreport generated by ./parrotbug

Change History

Changed 12 years ago by dzoe

Bugreport generated by ./parrotbug

Changed 12 years ago by jkeenan

TT #1716 and TT #930, where whitespace in paths is the issue rather than non-ascii characters, may be related to the problem described in this ticket.


Changed 11 years ago by NotFound

Please be more specific. non-ascii in that case is utf8, some iso-8859... ?

Changed 11 years ago by dzoe

That was valid utf-8. Current locale settings were:

LANG=cs_CZ.utf8 LC_CTYPE="cs_CZ.utf8" LC_NUMERIC="cs_CZ.utf8" LC_TIME="cs_CZ.utf8" LC_COLLATE="cs_CZ.utf8" LC_MONETARY="cs_CZ.utf8" LC_MESSAGES="cs_CZ.utf8" LC_PAPER="cs_CZ.utf8" LC_NAME="cs_CZ.utf8" LC_ADDRESS="cs_CZ.utf8" LC_TELEPHONE="cs_CZ.utf8" LC_MEASUREMENT="cs_CZ.utf8" LC_IDENTIFICATION="cs_CZ.utf8" LC_ALL=

Changed 11 years ago by NotFound

r48205 is a partial fix of the problem. It uses binary charset for the build path config string when appropriate, same as other config strings.

After that, the build fails at a later point because of path split problems. We are discussing possible fixes.

Changed 11 years ago by NotFound

After some discussion on irc, checking substrings on binary has been allowed, darbelo++, r48206

With that change I've built parrot on a utf8 path and all test passes except: t/compilers/pct/complete_workflow.t (Wstat: 1536 Tests: 54 Failed: 6)

Failed tests: 9, 18, 27, 36, 45, 54

Changed 11 years ago by NotFound

  • owner set to NotFound
  • status changed from new to assigned

Fixed t/compilers/pct/complete_workflow.t to allow non ascii build dir in r48207.

With this, the problem is fully solved for me. Waiting for feedback.

Changed 11 years ago by dzoe

Works like a charm - r48213. Thanks for the fix!

Changed 11 years ago by NotFound

  • status changed from assigned to closed
  • resolution set to fixed

Closing ticket

Note: See TracTickets for help on using tickets.