missing native android toolchain support?

788 views
Skip to first unread message

Luigi Semenzato

unread,
Jun 29, 2018, 5:52:27 PM6/29/18
to Chromium-dev
After syncing my chromium sources today, I am getting this error
trying to build for chrome OS with simplechrome. Any ideas? Thanks!

(sdk caroline R68-10654.0.0) semenzato@luigi ~/chromium/src $ gn gen
out_$SDK_BOARD/Release --args="$GN_ARGS"
ERROR at //build/config/android/config.gni:21:7: Assertion failed.
assert(checkout_android_native_support,
^-----
Missing native Android toolchain support. |target_os| in your .gclient
configuration file (in the parent directory of src) must include
"android" and/or "chromeos". For example:

solutions = [
...
]
target_os=["chromeos"]

See //tools/grit/grit_rule.gni:87:1: whence it was imported.
import("//build/config/android/config.gni")
^-----------------------------------------
See //tools/grit/repack.gni:5:1: whence it was imported.
import("//tools/grit/grit_rule.gni")
^----------------------------------
See //components/BUILD.gn:13:1: whence it was imported.
import("//tools/grit/repack.gni")
^-------------------------------
See //BUILD.gn:85:7: which caused the file to be included.
"//components:components_unittests",

Ken Rockot

unread,
Jun 29, 2018, 5:55:18 PM6/29/18
to seme...@chromium.org, Chromium-dev
As the error says, you do need target_os = ["chromeos"] in your .gclient file now.

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
    http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ss6AWOrNCqEJDfKnT7%2BOK8JiV-ztXQ1JF1_7PPL%2BCTww%40mail.gmail.com.

Scott Graham

unread,
Jun 29, 2018, 5:56:06 PM6/29/18
to Luigi Semenzato, chromium-dev
Forgive me for asking the obvious question, but did you add 'android' to target_os in .gclient per the message, and re-`gclient sync`?

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
    http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.

Mike Frysinger

unread,
Jun 29, 2018, 5:56:23 PM6/29/18
to Luigi Semenzato, chromium-dev

Ken Rockot

unread,
Jun 29, 2018, 5:57:02 PM6/29/18
to seme...@chromium.org, Chromium-dev
For additional context, some binary artifacts we ship with Chrome on Chrome OS now are built against Android toolchains for use by the ARC container. So target_os=["chromeos"] now pulls down the subset of Android toolchain dependencies required to support this.

Luigi Semenzato

unread,
Jun 29, 2018, 6:07:18 PM6/29/18
to roc...@google.com, Chromium-dev
Thanks. The answer to the obvious question is that sadly I didn't
read the message carefully and skipped over the "for example".

More generally, I think I expected that a cros chrome_sdk + git
rebase-update + gclient sync would bring my sources into a sane state.

Incidentally, the PSA says "All Chrome OS builders, the
chromeos-chrome ebuild, and the SimpleChrome workflow already have
this configuration applied, so no changes are necessary in those
cases", I suppose it means "a fresh SimpleChrome checkout"?

Christian Biesinger

unread,
Jun 29, 2018, 6:09:34 PM6/29/18
to seme...@chromium.org, roc...@google.com, chromium-dev
You'll probably be better off asking in a chromium-os mailing list
about the SimpleChrome setup...

Christian
> To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ts8hjCpOhmBha4Y92eOJKNxxsBwboee2%2BDVK4_CMkpTw%40mail.gmail.com.
>

Mike Frysinger

unread,
Jun 29, 2018, 6:11:42 PM6/29/18
to Luigi Semenzato, chromium-dev, Steven Bennetts, Achuith Bhandarkar
[ +stevenjb, +achuith ]

i think on the Simple Chrome side we've avoided going in and munging files that are supposed to be managed by the user.  we could probably at least have it do a sanity check like it does for gn settings.
-mike

Mike Frysinger

unread,
Jun 29, 2018, 6:12:54 PM6/29/18
to Christian Biesinger, Luigi Semenzato, chromium-dev
Simple Chrome blurs the lines and arguably makes more sense on a Chromium list since the goal is to build Chrome, not Chrome OS
-mike

Steven Bennetts

unread,
Jun 29, 2018, 6:15:12 PM6/29/18
to Mike Frysinger, cbies...@chromium.org, Luigi Semenzato, chromium-dev
Well, we do already have a check in GN. I would argue in favor of improving that messaging rather than adding additional, potentially fragile, checks to Simple Chrome :)



Mike Frysinger

unread,
Jun 29, 2018, 6:16:52 PM6/29/18
to Steven Bennetts, Christian Biesinger, Luigi Semenzato, chromium-dev
fair enough!
-mike

Luigi Semenzato

unread,
Jun 29, 2018, 6:36:33 PM6/29/18
to Mike Frysinger, Steven Bennetts, cbies...@chromium.org, Chromium-dev
Yes fair enough, thanks.

Now of course my earlier mistake should make me reluctant to mention
further breakage. Yet the advice in this case (fiddle with
PKG_CONFIG_PATH) does seem less applicable than the earlier advice.

(this is after adding target_os, doing a git rebase-update, a gclient
sync, and re-entering cros chrome-sdk)

(sdk caroline R68-10654.0.0) semenzato@luigi ~/chromium/src $
autoninja -C out_${SDK_BOARD}/Release chrome chrome_sandbox
nacl_helper
ninja -C out_caroline/Release chrome chrome_sandbox nacl_helper -j 640 -l 32
ninja: Entering directory `out_caroline/Release'
ninja: error: loading 'build.ninja': No such file or directory
(sdk caroline R68-10654.0.0) semenzato@luigi ~/chromium/src $ gn gen
out_$SDK_BOARD/Release --args="$GN_ARGS"
ERROR at //build/config/linux/pkg_config.gni:103:17: Script returned
non-zero exit code.
pkgresult = exec_script(pkg_config_script, args, "value")
^----------
Current dir: /usr/local/google2/home/semenzato/chromium/src/out_caroline/Release/
Command: python --
/usr/local/google2/home/semenzato/chromium/src/build/config/linux/pkg-config.py
-p pkg-config nss -v -lssl3
Returned 1.
stderr:

Package nss was not found in the pkg-config search path.
Perhaps you should add the directory containing `nss.pc'
to the PKG_CONFIG_PATH environment variable
No package 'nss' found
Could not run pkg-config.

See //third_party/nss/BUILD.gn:15:3: whence it was called.
pkg_config("system_nss_no_ssl_config") {
^---------------------------------------
See //crypto/BUILD.gn:221:25: which caused the file to be included.
public_configs += [ "//third_party/nss:system_nss_no_ssl_config" ]
^-------------------------------------------

Steven Bennetts

unread,
Jun 29, 2018, 6:55:34 PM6/29/18
to Luigi Semenzato, Mike Frysinger, cbies...@chromium.org, chromium-dev
Could you clarify "adding target_os" ?

Are you on a branch? (I assume so since your sdk environment says "(sdk caroline R68-10654.0.0)", which is old even for 68, 68 is on 10709.0.0). I have no problem entering cros-sdk with --board=caroline on either ToT or 68.

Steven Bennetts

unread,
Jun 29, 2018, 6:56:13 PM6/29/18
to Luigi Semenzato, Mike Frysinger, cbies...@chromium.org, chromium-dev
(Nevermind about 'adding target_os', you meant to '.gclient', I forgot already :) )

James Cook

unread,
Jun 29, 2018, 7:49:01 PM6/29/18
to Steven Bennetts, Luigi Semenzato, Mike Frysinger, Christian Biesinger, chromium-dev
Does anyone have ideas about how this could be fixed automatically?

I've seen at least half a dozen posts to mailing lists about this .gclient issue. I didn't add the dependency, but I tried to help out by improving the message. It's obviously not enough. I just had a new contributor tell me his first CL was going to be to try to improve the message.

Mike Frysinger

unread,
Jun 29, 2018, 8:04:47 PM6/29/18
to Luigi Semenzato, Steven Bennetts, Christian Biesinger, chromium-dev
have you run `./build/install-build-deps.sh` ?
-mike

Steven Bennetts

unread,
Jun 29, 2018, 8:06:29 PM6/29/18
to Mike Frysinger, Luigi Semenzato, cbies...@chromium.org, chromium-dev
Heh, we just got to that point together.

Now Luigi is working through the following issue that anyone on gLinux (everyone now?) has had to deal with:


The following packages have unmet dependencies:
lib32ncurses5-dev : Depends: lib32tinfo-dev (= 6.0+20171125-1) but it is not going to be installed
lib32z1-dev : Depends: zlib1g-dev (= 1:1.2.8.dfsg-5) but it is not going to be installed
libcairo2-dev : Depends: libfontconfig1-dev (>= 2.2.95) but it is not going to be installed
                Depends: libfreetype6-dev (>= 2.1.10) but it is not going to be installed
                Depends: libpng-dev but it is not going to be installed
libcups2-dev : Depends: libcupsimage2-dev (= 2.2.1-8+deb9u1) but it is not going to be installed
libglib2.0-dev : Depends: libpcre3-dev (>= 1:8.31) but it is not going to be installed
                 Depends: zlib1g-dev but it is not going to be installed
libgtk-3-dev : Depends: libgdk-pixbuf2.0-dev (>= 2.30.0) but it is not going to be installed
               Depends: libpango1.0-dev (>= 1.40.5) but it is not going to be installed
               Depends: libfontconfig1-dev but it is not going to be installed
libgtk2.0-dev : Depends: libgdk-pixbuf2.0-dev (>= 2.21.0) but it is not going to be installed
                Depends: libpango1.0-dev (>= 1.20) but it is not going to be installed
libpci-dev : Depends: zlib1g-dev but it is not going to be installed
linux-libc-dev : Breaks: linux-libc-dev:i386 (!= 4.15.4-1) but 4.9.82-1+deb9u3 is to be installed
linux-libc-dev:i386 : Breaks: linux-libc-dev (!= 4.9.82-1+deb9u3) but 4.15.4-1 is to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.

You will have to install the above packages yourself.



Dirk Pranke

unread,
Jun 30, 2018, 11:35:52 AM6/30/18
to Steven Bennetts, Mike Frysinger, Luigi Semenzato, Christian Biesinger, chromium-dev
On Fri, Jun 29, 2018 at 5:05 PM, 'Steven Bennetts' via Chromium-dev <chromi...@chromium.org> wrote:
Heh, we just got to that point together.

Now Luigi is working through the following issue that anyone on gLinux (everyone now?) has had to deal with:

This is the first I've heard of issues w/ install-build-deps.sh not working on gLinux, apart from a few cases where people were in experiments. Please file a bug so we can follow up on this (and obviously not discuss much about gLinux publicly). 

-- Dirk

>>>> > >>> To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.

>>>> > >>> To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ss6AWOrNCqEJDfKnT7%2BOK8JiV-ztXQ1JF1_7PPL%2BCTww%40mail.gmail.com.
>>>> > >>>
>>>> >
>>>> > --
>>>> > --
>>>> > Chromium Developers mailing list: chromi...@chromium.org
>>>> > View archives, change email options, or unsubscribe:
>>>> >     http://groups.google.com/a/chromium.org/group/chromium-dev
>>>> > ---
>>>> > You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>>> > To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ts8hjCpOhmBha4Y92eOJKNxxsBwboee2%2BDVK4_CMkpTw%40mail.gmail.com.
>>>> >
>>>>
>>>> --
>>>> --
>>>> Chromium Developers mailing list: chromi...@chromium.org
>>>> View archives, change email options, or unsubscribe:
>>>>     http://groups.google.com/a/chromium.org/group/chromium-dev
>>>> ---
>>>> You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>>> To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAPTJ0XHL4Op8yVuTBfVciWNx9bQup3yjTvu%2BbvCc2JtgT6PNoA%40mail.gmail.com.
>>>>
>>> --
>>> --
>>> Chromium Developers mailing list: chromi...@chromium.org
>>> View archives, change email options, or unsubscribe:
>>> http://groups.google.com/a/chromium.org/group/chromium-dev
>>> ---
>>> You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev+unsubscribe@chromium.org.

--
--
Chromium Developers mailing list: chromi...@chromium.org
View archives, change email options, or unsubscribe:
http://groups.google.com/a/chromium.org/group/chromium-dev
---
You received this message because you are subscribed to the Google Groups "Chromium-dev" group.

Luigi Semenzato

unread,
Jul 2, 2018, 2:02:23 PM7/2/18
to Dirk Pranke, Steven Bennetts, Mike Frysinger, cbies...@chromium.org, Chromium-dev
I have filed https://crbug.com/859368 for the install-build-deps.sh failure.

It turns out that after manually installing a couple of packages
(lib32ncurses5-dev and libcairo2-dev) I am down to an incompatibility
between libc and libc:i386. as shown (this is all documented in the
bug):

The following packages have unmet dependencies:
linux-libc-dev : Breaks: linux-libc-dev:i386 (!= 4.15.4-1) but
4.9.82-1+deb9u3 is to be installed
linux-libc-dev:i386 : Breaks: linux-libc-dev (!= 4.9.82-1+deb9u3) but
4.15.4-1 is to be installed

It's unclear to me that this is related to the gn error from pkg_config:

stderr:

Package nss was not found in the pkg-config search path.
Perhaps you should add the directory containing `nss.pc'
to the PKG_CONFIG_PATH environment variable
No package 'nss' found
Could not run pkg-config.

See //third_party/nss/BUILD.gn:15:3: whence it was called.
pkg_config("system_nss_no_ssl_config") {
^---------------------------------------
See //crypto/BUILD.gn:221:25: which caused the file to be included.
public_configs += [ "//third_party/nss:system_nss_no_ssl_config" ]
^-------------------------------------------


>>>> >>>> > >>> To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.
>>>> >>>> > >>> To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ss6AWOrNCqEJDfKnT7%2BOK8JiV-ztXQ1JF1_7PPL%2BCTww%40mail.gmail.com.
>>>> >>>> > >>>
>>>> >>>> >
>>>> >>>> > --
>>>> >>>> > --
>>>> >>>> > Chromium Developers mailing list: chromi...@chromium.org
>>>> >>>> > View archives, change email options, or unsubscribe:
>>>> >>>> > http://groups.google.com/a/chromium.org/group/chromium-dev
>>>> >>>> > ---
>>>> >>>> > You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>>> >>>> > To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAA25o9Ts8hjCpOhmBha4Y92eOJKNxxsBwboee2%2BDVK4_CMkpTw%40mail.gmail.com.
>>>> >>>> >
>>>> >>>>
>>>> >>>> --
>>>> >>>> --
>>>> >>>> Chromium Developers mailing list: chromi...@chromium.org
>>>> >>>> View archives, change email options, or unsubscribe:
>>>> >>>> http://groups.google.com/a/chromium.org/group/chromium-dev
>>>> >>>> ---
>>>> >>>> You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>>> >>>> To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/chromium-dev/CAPTJ0XHL4Op8yVuTBfVciWNx9bQup3yjTvu%2BbvCc2JtgT6PNoA%40mail.gmail.com.
>>>> >>>>
>>>> >>> --
>>>> >>> --
>>>> >>> Chromium Developers mailing list: chromi...@chromium.org
>>>> >>> View archives, change email options, or unsubscribe:
>>>> >>> http://groups.google.com/a/chromium.org/group/chromium-dev
>>>> >>> ---
>>>> >>> You received this message because you are subscribed to the Google Groups "Chromium-dev" group.
>>>> >>> To unsubscribe from this group and stop receiving emails from it, send an email to chromium-dev...@chromium.org.

Luigi Semenzato

unread,
Jul 2, 2018, 4:48:04 PM7/2/18
to Dirk Pranke, Steven Bennetts, Mike Frysinger, cbies...@chromium.org, Chromium-dev
I followed the workaround in b/110801802 comment #2 (also see #12) and
it fixed the problem for me.
Reply all
Reply to author
Forward
0 new messages