Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build failure #4967

Closed
ghost opened this issue Jul 12, 2018 · 17 comments
Closed

Build failure #4967

ghost opened this issue Jul 12, 2018 · 17 comments

Comments

@ghost
Copy link

ghost commented Jul 12, 2018

Hello!
May somebody please advise me, what can cause the following build error!

Steps to reproduce

  1. Start compile the source

Expected behaviour

Build complete successfull

Actual behaviour

Build fails

Configuration

Operating system:
Linux
Version of Telegram Desktop:
e466dc9

Logs:

../../Telegram/SourceFiles/export/data/export_data_types.cpp: In lambda function:
../../Telegram/SourceFiles/export/data/export_data_types.cpp:182:60: internal compiler error: Segmentation fault
if constexpr (MTPDphotoCachedSize::Is<decltype(data)>()) {
^
Please submit a full bug report,
with preprocessed source if appropriate.
See http://bugzilla.redhat.com/bugzilla for instructions.
Preprocessed source stored into /tmp/ccbOSyce.out file, please attach this to your bugreport.
make[2]: *** [CMakeFiles/lib_export.dir/home/az/rpmbuild/BUILD/tdesktop-1.3.9-e466dc9/Telegram/SourceFiles/export/data/export_data_types.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from ../../Telegram/SourceFiles/export/export_api_wrap.h:10:0,
from ../../Telegram/SourceFiles/export/export_controller.cpp:10:
../../Telegram/SourceFiles/mtproto/concurrent_sender.h: In member function 'MTP::ConcurrentSender::SentRequestWrap MTP::ConcurrentSender::request(mtpRequestId)':
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:474:40: error: no matching function for call to 'MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender*, mtpRequestId&)'
return SentRequestWrap(this, requestId);
^
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: candidate: MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(gsl::not_nullMTP::ConcurrentSender*, mtpRequestId)
inline ConcurrentSender::SentRequestWrap::SentRequestWrap(
^~~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: no known conversion for argument 1 from 'MTP::ConcurrentSender*' to 'gsl::not_nullMTP::ConcurrentSender*'
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(const MTP::ConcurrentSender::SentRequestWrap&)
class SentRequestWrap {
^~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender::SentRequestWrap&&)
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
make[2]: *** [CMakeFiles/lib_export.dir/home/az/rpmbuild/BUILD/tdesktop-1.3.9-e466dc9/Telegram/SourceFiles/export/export_controller.o] Error 1
In file included from ../../Telegram/SourceFiles/export/export_api_wrap.h:10:0,
from ../../Telegram/SourceFiles/export/export_api_wrap.cpp:8:
../../Telegram/SourceFiles/mtproto/concurrent_sender.h: In member function 'MTP::ConcurrentSender::SentRequestWrap MTP::ConcurrentSender::request(mtpRequestId)':
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:474:40: error: no matching function for call to 'MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender*, mtpRequestId&)'
return SentRequestWrap(this, requestId);
^
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: candidate: MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(gsl::not_nullMTP::ConcurrentSender*, mtpRequestId)
inline ConcurrentSender::SentRequestWrap::SentRequestWrap(
^~~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: no known conversion for argument 1 from 'MTP::ConcurrentSender*' to 'gsl::not_nullMTP::ConcurrentSender*'
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(const MTP::ConcurrentSender::SentRequestWrap&)
class SentRequestWrap {
^~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender::SentRequestWrap&&)
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/export/export_api_wrap.cpp:713: confused by earlier errors, bailing out
Preprocessed source stored into /tmp/ccqu6Jeo.out file, please attach this to your bugreport.

Thanks!

@stek29
Copy link
Contributor

stek29 commented Jul 12, 2018

internal compiler error: Segmentation fault

@ghost
Copy link
Author

ghost commented Jul 12, 2018

Yeah, i already noticed that. But something triggers this error. I did a try with different compiler version and have the same issue. Perhaps some flag is needed?

Similar issue: #4978

@vitlav
Copy link
Contributor

vitlav commented Jul 14, 2018

./../Telegram/SourceFiles/export/data/export_data_types.cpp:182:60: internal compiler error: Segmentation fault
if constexpr (MTPDphotoCachedSize::Is<decltype(data)>()) {

It is gcc 7 compiler bug, see https://bugzilla.altlinux.org/show_bug.cgi?id=35112
Just update to newest gcc version from repo.

@ghost
Copy link
Author

ghost commented Jul 14, 2018

Well, the compiler error is caused by parallel build, but even if it's disabled, the compilation problem still persists:

No parallel build log:

In file included from ../../Telegram/SourceFiles/export/export_api_wrap.h:10:0,
from ../../Telegram/SourceFiles/export/export_api_wrap.cpp:8:
../../Telegram/SourceFiles/mtproto/concurrent_sender.h: In member function 'MTP::ConcurrentSender::SentRequestWrap MTP::ConcurrentSender::request(mtpRequestId)':
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:474:40: error: no matching function for call to 'MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender*, mtpRequestId&)'
return SentRequestWrap(this, requestId);
^
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: candidate: MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(gsl::not_nullMTP::ConcurrentSender*, mtpRequestId)
inline ConcurrentSender::SentRequestWrap::SentRequestWrap(
^~~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: no known conversion for argument 1 from 'MTP::ConcurrentSender*' to 'gsl::not_nullMTP::ConcurrentSender*'
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(const MTP::ConcurrentSender::SentRequestWrap&)
class SentRequestWrap {
^~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender::SentRequestWrap&&)
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/export/export_api_wrap.cpp:712: confused by earlier errors, bailing out
Preprocessed source stored into /tmp/ccHTIWGm.out file, please attach this to your bugreport.
make[2]: *** [CMakeFiles/lib_export.dir/build.make:78: CMakeFiles/lib_export.dir/home/az/rpmbuild/BUILD/tdesktop-1.3.10-a919737/Telegram/SourceFiles/export/export_api_wrap.o] Error 1
make[2]: Leaving directory '/home/az/rpmbuild/BUILD/tdesktop-1.3.10-a919737/out/Release'
make[1]: *** [CMakeFiles/Makefile2:661: CMakeFiles/lib_export.dir/all] Error 2

Also i'm not able to compile the source with GCC 5.3.1

@john-preston
Copy link
Member

@cranes-bill GCC 5.3.1 shouldn't be able to compile Telegram Desktop :( I've tested on GCC 7.2, so I'm not sure any version below that one is able to.

@ghost
Copy link
Author

ghost commented Jul 14, 2018

@john-preston OK, thanks for the answer!
Also, if you think the compilation error is completely up to the compiler, just close this issue please!

@john-preston
Copy link
Member

@cranes-bill I'm afraid so. At least there is no problem in building tdesktop in GCC 7.2, Visual C++ 15.7.5 or Xcode 9.4.1. Also GCC 7.2 and Visual Studio 2017 builds are successful on Travis / AppVeyor.

@ghost
Copy link
Author

ghost commented Jul 14, 2018

Well, it's just a litle bit hardly to me to accept that, since i have several other programs compiled with this compiler include Telegram df9ec4b, however, i'm closing the issue.

P.S: Sorry for the bad English!

@ghost ghost closed this as completed Jul 14, 2018
@john-preston
Copy link
Member

@cranes-bill The second log is strange: "note: no known conversion for argument 1 from 'MTP::ConcurrentSender*' to 'gsl::not_nullMTP::ConcurrentSender*'" - there should be an obvious conversion (a constructor). Are you sure a correct version of GSL submodule is used? Maybe "git submodule update" will fix that?

@ghost
Copy link
Author

ghost commented Jul 14, 2018

I did update of GSL source to the latest git, but as i see it looks the same:

BUILD/tdesktop-1.3.10-a919737/Telegram/SourceFiles/export/export_api_wrap.cpp
In file included from ../../Telegram/SourceFiles/export/export_api_wrap.h:10:0,
                 from ../../Telegram/SourceFiles/export/export_api_wrap.cpp:8:
../../Telegram/SourceFiles/mtproto/concurrent_sender.h: In member function 'MTP::ConcurrentSender::SentRequestWrap MTP::ConcurrentSender::request(mtpRequestId)':
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:474:40: error: no matching function for call to 'MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender*, mtpRequestId&)'
  return SentRequestWrap(this, requestId);
                                        ^
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note: candidate: MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(gsl::not_null<MTP::ConcurrentSender*>, mtpRequestId)
 inline ConcurrentSender::SentRequestWrap::SentRequestWrap(
        ^~~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:453:8: note:   no known conversion for argument 1 from 'MTP::ConcurrentSender*' to 'gsl::not_null<MTP::ConcurrentSender*>'
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(const MTP::ConcurrentSender::SentRequestWrap&)
  class SentRequestWrap {
        ^~~~~~~~~~~~~~~
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note:   candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note: candidate: constexpr MTP::ConcurrentSender::SentRequestWrap::SentRequestWrap(MTP::ConcurrentSender::SentRequestWrap&&)
../../Telegram/SourceFiles/mtproto/concurrent_sender.h:146:8: note:   candidate expects 1 argument, 2 provided
../../Telegram/SourceFiles/export/export_api_wrap.cpp:712: confused by earlier errors, bailing out

@john-preston
Copy link
Member

@cranes-bill Latest git won't work, you need the version that is used in tdesktop submodule, v1.0.0 tag.

@john-preston
Copy link
Member

(they've made a breaking change)

@ghost
Copy link
Author

ghost commented Jul 14, 2018

Aha, clear...
Now just the compiler error has came back, but there is no other errors:


../../Telegram/SourceFiles/export/export_api_wrap.cpp: In lambda function:
../../Telegram/SourceFiles/export/export_api_wrap.cpp:712:56: internal compiler error: Segmentation fault
   if constexpr (MTPDphotos_photos::Is<decltype(data)>()) {
                                                        ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
Preprocessed source stored into /tmp/ccToyctg.out file, please attach this to your bugreport.
make[2]: *** [CMakeFiles/lib_export.dir/build.make:78: CMakeFiles/lib_export.dir/home/az/rpmbuild/BUILD/tdesktop-1.3.10-a919737/Telegram/SourceFiles/export/export_api_wrap.o] Error 1

@john-preston
Copy link
Member

@cranes-bill internal compiler error ¯_(ツ)_/¯

@Johnnynator
Copy link
Contributor

Johnnynator commented Jul 14, 2018

@cranes-bill https://github.com/Johnnynator/void-packages/blob/7b4f0a0c832eb9ca56b316d39a111669be77d27d/srcpkgs/telegram-desktop/patches/gcc-if-constexpr-tmpfix.patch
Patch for working around that compiler bug. Originally taken from https://github.com/reagentoo/gentoo-overlay and adapted for Telegram 1.3.10.

@ghost
Copy link
Author

ghost commented Jul 15, 2018

@Johnnynator That actually is i was looking for. Works perfect.
Thank you very, very much!

@github-actions
Copy link

github-actions bot commented Jun 1, 2021

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Jun 1, 2021
This issue was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants