Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 626292 - net-ftp/filezilla-3.25.2 fails to compile with >=dev-libs/libfilezilla-0.10.0: undeclared int_to_hex_char function
Summary: net-ftp/filezilla-3.25.2 fails to compile with >=dev-libs/libfilezilla-0.10.0...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Bernard Cafarelli
URL:
Whiteboard:
Keywords:
: 627006 (view as bug list)
Depends on:
Blocks:
 
Reported: 2017-07-26 20:03 UTC by Adam Stylinski
Modified: 2017-11-08 13:20 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build log (build.log,52.62 KB, text/x-log)
2017-07-28 19:13 UTC, Adam Stylinski
Details
emerge --info output (emerge--info,6.77 KB, text/plain)
2017-07-28 19:15 UTC, Adam Stylinski
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Adam Stylinski 2017-07-26 20:03:26 UTC
I get the following error in my build:

uri.cpp: In function ‘std::__cxx11::string fz::percent_encode(const string&, bool)’:
uri.cpp:247:11: error: ‘int_to_hex_char’ was not declared in this scope
    ret += int_to_hex_char<char, false>(static_cast<unsigned char>(c) >> 4);
           ^~~~~~~~~~~~~~~
uri.cpp:247:27: error: expected primary-expression before ‘char’
    ret += int_to_hex_char<char, false>(static_cast<unsigned char>(c) >> 4);
                           ^~~~
uri.cpp:248:27: error: expected primary-expression before ‘char’
    ret += int_to_hex_char<char, false>(c & 0xf);
                           ^~~~
uri.cpp: In function ‘std::__cxx11::string fz::percent_decode(const string&)’:
uri.cpp:273:37: error: ‘hex_char_to_int’ was not declared in this scope
    int high = hex_char_to_int(*(++c));
                                     ^
Comment 1 Jonas Stein gentoo-dev 2017-07-28 18:45:48 UTC
Thank you for the report. Please attach the logfiles
https://wiki.gentoo.org/wiki/Bugzilla/Bug_report_guide#Report_a_build-time_bug_.28emerge_failed.29
and reopen this ticket (Status:unconfirmed).

Works for me. Perhaps a broken gcc upgrade? 
https://wiki.gentoo.org/wiki/Upgrading_GCC
Comment 2 Adam Stylinski 2017-07-28 19:13:32 UTC
Created attachment 487130 [details]
build log
Comment 3 Adam Stylinski 2017-07-28 19:15:08 UTC
Created attachment 487132 [details]
emerge --info output
Comment 4 Adam Stylinski 2017-07-28 19:15:35 UTC
Yes, I probably should get rid of the -O3 and -fomit-frame-pointer flags, but I don't think that's what's preventing the compilation.
Comment 5 Adam Stylinski 2017-07-28 19:17:44 UTC
Also, I had to add a custom package.env to even allow it to get that far in the compilation process (had to had -Wno-all so that the warning about the -fpermissive behavior wouldn't stop the compilation).
Comment 6 Bernard Cafarelli gentoo-dev 2017-07-31 13:18:13 UTC
With these "std::__cxx11" errors, and all the GCC versions you have installed, this really sounds like a C++ ABI issue. Have you rebuilt all related packages as mentioned with the same GCC version?
Also, I see 7.1.0 in installed gcc, but running 6.3.0, downgrading gcc can trigger "funny" behaviours too
Comment 7 Oleh 2017-07-31 13:44:20 UTC
it is not entirely connected to gcc updates. i have fully rebuilt box with emerge -e @world. real problem is somewhere in libfilezilla-0.10.0 which has lot of cxx changes. apparently filezilla-3.25.2 seems missing code changes that are required for libfilezilla-0.10.0. downgrading to 0.9.x workarounds compilation of filezilla. looks like upstream problem.
Comment 8 Adam Stylinski 2017-07-31 17:31:18 UTC
(In reply to Bernard Cafarelli from comment #6)
> With these "std::__cxx11" errors, and all the GCC versions you have
> installed, this really sounds like a C++ ABI issue. Have you rebuilt all
> related packages as mentioned with the same GCC version?
> Also, I see 7.1.0 in installed gcc, but running 6.3.0, downgrading gcc can
> trigger "funny" behaviours too

While I have 7.x built, I've not built any packages with it, yet.  Every dependent package for this has been built with g++ 6.3.x.
Comment 9 Bernard Cafarelli gentoo-dev 2017-08-01 14:21:18 UTC
Thanks Oleg! Cleaning both libfilezilla and filezilla, I can reproduce compilation failure with libfilezilla-0.10.0
Comment 10 Bernard Cafarelli gentoo-dev 2017-08-04 08:23:34 UTC
I added dev-libs/libfilezilla-0.10.0 to package.mask as a short-term workaround, have to power down my dev box for a few days
Comment 11 Bernard Cafarelli gentoo-dev 2017-08-04 08:25:04 UTC
*** Bug 627006 has been marked as a duplicate of this bug. ***
Comment 12 Adam Stylinski 2017-09-06 16:40:18 UTC
This masking will fix the compile error, but it equates to a runtime error thanks to likely some different default build flags:

Reading locale option from /home/adam/.config/filezilla/filezilla.xml
Fatal Error: Mismatch between the program and library build versions detected.
The library used 3.0 (wchar_t,compiler with C++ ABI 1009,wx containers,compatible with 2.8),
and your program used 3.0 (wchar_t,compiler with C++ ABI 1010,wx containers,compatible with 2.8).
Aborted

I rebuilt all the direct dependencies, but maybe I should rebuild assuming an empty tree just in case?
Comment 13 Martin Bürge 2017-09-08 08:45:26 UTC
@Adam
I had the same problem.
Rebuilding wxGTK:3.0 helped.
Comment 14 Adam Stylinski 2017-09-08 14:48:54 UTC
(In reply to Martin Bürge from comment #13)
> @Adam
> I had the same problem.
> Rebuilding wxGTK:3.0 helped.

That was the first thing I tried, it didn't seem to help.
Comment 15 Adam Stylinski 2017-09-11 13:38:08 UTC
(In reply to Adam Stylinski from comment #14)
> (In reply to Martin Bürge from comment #13)
> > @Adam
> > I had the same problem.
> > Rebuilding wxGTK:3.0 helped.
> 
> That was the first thing I tried, it didn't seem to help.

ahh nevermind, did it with the wrong gtk version.
Comment 16 Bernard Cafarelli gentoo-dev 2017-11-08 13:20:53 UTC
OK current (unmasked) ebuilds work fine, so I am marking this bug as fixed.

Version bumps (and unmasking of related libfilezilla) will be tracked/updated in bug #636868