Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 594042 - ktp-accounts-kcm won't build without explicitly setting LC_ALL="C"
Summary: ktp-accounts-kcm won't build without explicitly setting LC_ALL="C"
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Eclasses (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-09-17 08:15 UTC by Michele Alzetta
Modified: 2016-09-23 21:19 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Michele Alzetta 2016-09-17 08:15:12 UTC
Merging translations into /var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1_build/data/kaccounts/google-im.service.
CREATED /var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1_build/data/kaccounts/google-im.service
CMake Error at /usr/lib64/cmake/KAccounts/KAccountsMacros.cmake:25 (message):
  error processing
  /var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1/data/kaccounts/google-im.service.in:
  perl: warning: Setting locale failed.
  perl: warning: Please check that your locale settings:
        LANGUAGE = "",
        LC_ALL = (unset),
        LC_MESSAGES = "C",
        LC_COLLATE = "C",
        LC_CTYPE = "C",
        LANG = "it"
      are supported and installed on your system.
  perl: warning: Falling back to the standard locale ("C").
Call Stack (most recent call first):
  data/kaccounts/CMakeLists.txt:3 (kaccounts_add_service)
-- Configuring incomplete, errors occurred!
See also "/var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1_build/CMakeFiles/CMakeOutput.log".
 * ERROR: kde-apps/ktp-accounts-kcm-16.08.1::gentoo failed (configure phase):
 *   cmake failed
 * 
 * Call stack:
 *     ebuild.sh, line  115:  Called src_configure
 *   environment, line 3942:  Called kde5_src_configure
 *   environment, line 2930:  Called cmake-utils_src_configure
 *   environment, line 1174:  Called _cmake_execute_optionally 'src_configure'
 *   environment, line  563:  Called enable_cmake-utils_src_configure
 *   environment, line 1606:  Called die
 * The specific snippet of code:
 *       "${CMAKE_BINARY}" "${cmakeargs[@]}" "${CMAKE_USE_DIR}" || die "cmake failed";
 * 
 * If you need support, post the output of `emerge --info '=kde-apps/ktp-accounts-kcm-16.08.1::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=kde-apps/ktp-accounts-kcm-16.08.1::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/temp/environment'.
 * Working directory: '/var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1_build'
 * S: '/var/tmp/portage/kde-apps/ktp-accounts-kcm-16.08.1/work/ktp-accounts-kcm-16.08.1'

This also happened with previous ebuilds. Easily fixed by emerging as: 

LC_ALL="C" emerge -1 ktp-accounts-kcm
Comment 1 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2016-09-22 02:29:20 UTC
>        LANG = "it"

It looks like perl can't find support for LANG="it"

This is probably a misconfiguration on your part.

LANG is supposed to be a string like:  it_IT
as mapped from  /usr/share/i18n/locales/

And so perl warns saying that was an issue.

*HOWEVER*, it keeps on going:


LANG=it LC_CTYPE=C LC_TIME=C LC_MESSAGES=C LANGUAGE="" perl -e1 && echo "was ok" 
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = "",
	LC_ALL = (unset),
	LC_TIME = "C",
	LC_CTYPE = "C",
	LC_MESSAGES = "C",
	LANG = "it"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
was ok


So its something that I cant' divine from the trace going wrong and the perl locale stuff is just distraction. ( Though if cmake traps warnings to stderr and treats that as an error, then the problem might be cmake prematurely escallating warnings to errors )
Comment 2 Michele Alzetta 2016-09-22 07:08:29 UTC
No other ebuilds have this problem, and if I emerge like this:

LC_ALL="C" emerge ktp-accounts-kcm 

it works fine. So there is definitely some glitch somewhere. When I get back to my box on saturday I'll check if changing the LANG variable works.
Comment 3 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2016-09-22 21:55:39 UTC
(In reply to Michele Alzetta from comment #2)
> No other ebuilds have this problem, and if I emerge like this:
> 

I would suspect quite a few more ebuilds are *warning* this problem, given this exact situation causes Perl to warn with *no code*.

But this is the only place where this warning is causing a failure.

_Why_ that happens is the important question ( but outside my expertise from the perl side, so somebody in kde will have to give me more to work with )
Comment 4 Michele Alzetta 2016-09-23 21:19:28 UTC
Fixing LANG variable fixed this. It is strange, however, that this ebuild and kaccounts-providers are the only two that fail because of this.