You are not logged in.

#1 2016-05-10 09:47:46

islandrabe
Member
Registered: 2016-05-10
Posts: 5

[SOLVED] c++, make started complaining about strayed characters

Beginning 2016 I set up a basic archlinux system for running an openframeworks app (a c++ framework) and nothing else. I documented the process for later use and since then the app is running (it's part of a temporary set up where nothing gets changed); it just worked out fine.
A while ago I tried to set up a basic archlinux system for another openframeworks app; for setting up I used the same PC and I followed the steps in my documentation (basically the "Beginners' guide" plus a few additional packages like x-server), but compiling the openframeworks code on that fresh archlinux system fails; I than tried compiling the app, that worked beginning 2016, with the same result.
The error message points me to:

In file included from /usr/include/c++/5.3.0/iomanip:43:0,
                 from /home/of/of_v0.9.3_linux64_release/libs/openFrameworks/utils/ofConstants.h:388,
                 from /home/of/of_v0.9.3_linux64_release/libs/openFrameworks/ofMain.h:5,
                 from /home/of/of_v0.9.3_linux64_release/apps/myApps/poesiekubus/src/main.cpp:1:
/./bin/locale:1:1: Fehler: verirrtes »\177« im Programm
 ELF          >    Ð @     @       ø          @ 8   @         @       @ @     @ @     ø      ø                   8      8@     8@                                          @       @     üc      üc                     n       n`      n`     ä        !                    n      n`     n`     à      à                   X      X@     X@     D       D              Påtd   |[      |[@     |[@     D      D             Qåtd                                                  Råtd    n       n`      n`                          /usr/lib/ld-linux-x86-64.so.2            GNU                        GNU “N(€€ž&¤'¹\ï‘í…Ðâµ       K       <   B      4   .              J                 :                     C           '               8       I       E       G      ;                             5                      2       *   $           @       &          (       D                         A   H   #           )       -                 3                      !      /   
   ,              9           +                  7       1                  =   ?          6           F                                                                                                                                                                                                                                     %       0                           
 ^

... and a lot of strange symbols follow with other errors about "verirrte" (= strayed) characters in the program

iomanip at line 43 points at

#include <locale>

... but there I lose trace.

the output of locale is:

LANG=de_AT.UTF-8
LC_CTYPE="de_AT.UTF-8"
LC_NUMERIC="de_AT.UTF-8"
LC_TIME="de_AT.UTF-8"
LC_COLLATE="de_AT.UTF-8"
LC_MONETARY="de_AT.UTF-8"
LC_MESSAGES="de_AT.UTF-8"
LC_PAPER="de_AT.UTF-8"
LC_NAME="de_AT.UTF-8"
LC_ADDRESS="de_AT.UTF-8"
LC_TELEPHONE="de_AT.UTF-8"
LC_MEASUREMENT="de_AT.UTF-8"
LC_IDENTIFICATION="de_AT.UTF-8"
LC_ALL=

and the files are encoded as:

src/ofApp.cpp: C source, UTF-8 Unicode text

Character encoding seems not working correctly or even any more. I could partially fix it by recoding the filenames of the used image files and then compiling gets a bit further, but it does not complete and it is not practical.
When I look at "Last Updated" of libc++ 3.7.1-1 it says "2016-02-13 22:06 UTC" and that would fit, as I set up the working OS before and tried to set it up again afterwards.
Does someone else has this issue, is there a way how to check what has changed in the basic archlinux setup between 01/2016 and 04/2016 and how could that issue be fixed?
Additional notes: The example apps of openframeworks, which files are

ofApp.cpp: C source, ASCII text

compile just fine and I copied the app files via USB-Stick on the archlinux system (while tracing the error I also suspected that step; without result ...).
All the best

Last edited by islandrabe (2016-08-10 07:25:17)

Offline

#2 2016-05-10 12:47:46

mrunion
Member
From: Jonesborough, TN
Registered: 2007-01-26
Posts: 1,938
Website

Re: [SOLVED] c++, make started complaining about strayed characters

gcc and company got updated to 6.1. There are some breakages there. Could this be the issue?


Matt

"It is very difficult to educate the educated."

Offline

#3 2016-05-10 20:41:28

Mika79
Member
Registered: 2016-03-28
Posts: 32

Re: [SOLVED] c++, make started complaining about strayed characters

Looks to me like it includes the executable 'locale' in the source files instead of any headers called 'locale'. You got an executable directory in your include path Id guess.

Last edited by Mika79 (2016-05-10 20:41:46)

Offline

#4 2016-05-11 07:58:54

islandrabe
Member
Registered: 2016-05-10
Posts: 5

Re: [SOLVED] c++, make started complaining about strayed characters

Thanks for your quick replies!
For gcc: So having updated to gcc 6.1 could mess things up because the rest (for example libc++) stays the same? I installed the system mid April and haven't updated since then; I am using the foregoing version of gcc. Your post, mrunoin, let me think about 1. trying to downgrade the libc++ package and if that doesn't help 2. upgrade gcc to 6.1 (maybe the breakages that concern me got solved). By the way: Is there an easy way to check, which packages got updated in between January and April 2016, instead of going through the dependencies on archlinux.org/packages/? Or is there even – a spontaneous idea – a possibility within pacman to install packages not newer than January 2016?
For executable 'locale': I hope, 'locale' does link to the header file '/usr/include/c++/5.3.0/locale' that is in the same folder as iomanip; and I also checked an 'older' iomanip file and it is linked the same  ... so maybe, Mika79, this is correct?

Offline

#5 2016-05-11 13:23:05

eschwartz
Fellow
Registered: 2014-08-08
Posts: 4,097

Re: [SOLVED] c++, make started complaining about strayed characters

You can install a set of packages from a specific date using the Arch Linux Archive (formerly known as the Arch Rollback Machine).


Managing AUR repos The Right Way -- aurpublish (now a standalone tool)

Offline

#6 2016-05-13 08:21:47

islandrabe
Member
Registered: 2016-05-10
Posts: 5

Re: [SOLVED] c++, make started complaining about strayed characters

Thanks Eschwartz for pointing me to that (I overlooked the hint under "Downgrading packages", what I tried before ...)! I will try that.
And additional to the post from Wednesday: I gave it a try, installing libc++ (which hasn't been installed as I guessed) and upgrading to gcc-6.1 ... but both didn't solve the issue (anyway libc++ is not used automatically with gcc I guess); the only difference now seems the version number in the error log

In file included from /usr/include/c++/6.1.1/iomanip:43:0, ...

Offline

#7 2016-05-13 09:40:03

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 23,944

Re: [SOLVED] c++, make started complaining about strayed characters

If its in the same folder shouldn't the include line be

#include "locale"

otherwise it will try to source the linker path and try to use the binary of locale instead (then again why is a binary directory in your linker path, as Mika suggests) ?

Last edited by V1del (2016-05-13 09:45:12)

Offline

#8 2016-05-17 07:03:53

islandrabe
Member
Registered: 2016-05-10
Posts: 5

Re: [SOLVED] c++, make started complaining about strayed characters

Thanks V1del and again Mika79, I will have a closer look at that 'include'; until now I only compared the iomanip file of two different gcc-lib versions (the old working one and the new not working), which have been the same way.

Offline

#9 2016-08-10 07:23:45

islandrabe
Member
Registered: 2016-05-10
Posts: 5

Re: [SOLVED] c++, make started complaining about strayed characters

Tracing the issues of "locale" was not successful (Somehow it seems that a link for pre-encoding got lost?) ... but a quite straight solution is character encoding from "utf8" to "ascii":

iconv -f utf8 -t ascii//TRANSLIT ofApp.cpp_utf8 > ofApp.cpp_ascii

Then building works out and it solved that issue.

Offline

Board footer

Powered by FluxBB