Skip to contentSkip to conversation

New: putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

Buildroot bugzilla at busybox.net 1 participant 10 messages May 10, 2020 – Aug 8, 2020

lore
Share & tools
lore
#0 lore raw

https://bugs.busybox.net/show_bug.cgi?id=12876

Bug ID: 12876
Summary: putilimp.h **error**: missing binary operator before
token "(" #elif __has_builtin(__c11_atomic_load) && \
Product: buildroot
Version: 2020.02
Hardware: All
OS: Linux
Status: NEW
Severity: blocker
Priority: P5
Component: Other
Assignee: unassigned at buildroot.uclibc.org
Reporter: yogesh2760781 at gmail.com
CC: buildroot at uclibc.org
Target Milestone: ---

while make on buildroot following Error is coming. here is log

/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/bin/ccache
/usr/bin/g++ -o
/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tzgnames.o
../deps/icu-small/source/i18n/tzgnames.cpp '-DV8_DEPRECATION_WARNINGS'
'-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D__STDC_FORMAT_MACROS'
'-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED='
'-D_CRT_SECURE_NO_DEPRECATE=' '-DU_STATIC_IMPLEMENTATION=1'
'-DUCONFIG_NO_SERVICE=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=1'
'-DUCONFIG_NO_BREAK_ITERATION=0'
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include/openssl
-I../deps/icu-small/source/i18n -I../deps/icu-small/source/common -pthread
-Wall -Wextra -Wno-unused-parameter -m64 -Wno-deprecated-declarations
-Wno-strict-aliasing -O3 -fno-omit-frame-pointer -fno-exceptions -std=gnu++1y
-frtti -MMD -MF /home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/.deps//home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tzgnames.o.d.raw -I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include -O2
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include -c
/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/bin/ccache
/usr/bin/g++ -o
/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o
../deps/icu-small/source/i18n/rbt_pars.cpp '-DV8_DEPRECATION_WARNINGS'
'-DV8_IMMINENT_DEPRECATION_WARNINGS' '-D__STDC_FORMAT_MACROS'
'-DU_I18N_IMPLEMENTATION=1' '-DU_ATTRIBUTE_DEPRECATED='
'-D_CRT_SECURE_NO_DEPRECATE=' '-DU_STATIC_IMPLEMENTATION=1'
'-DUCONFIG_NO_SERVICE=1' '-DU_ENABLE_DYLOAD=0' '-DU_HAVE_STD_STRING=1'
'-DUCONFIG_NO_BREAK_ITERATION=0'
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include/openssl
-I../deps/icu-small/source/i18n -I../deps/icu-small/source/common -pthread
-Wall -Wextra -Wno-unused-parameter -m64 -Wno-deprecated-declarations
-Wno-strict-aliasing -O3 -fno-omit-frame-pointer -fno-exceptions -std=gnu++1y
-frtti -MMD -MF /home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/.deps//home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o.d.raw -I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include -O2
-I/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/host/include -c
In file included from ../deps/icu-small/source/i18n/rbt_pars.cpp:43:0:
../deps/icu-small/source/common/putilimp.h:226:20: error: missing binary
operator before token "("

 #elif __has_builtin(__c11_atomic_load) && \
                    ^
In file included from ../deps/icu-small/source/common/umutex.h:31:0,
                 from ../deps/icu-small/source/common/mutex.h:27,
                 from ../deps/icu-small/source/i18n/tzgnames.cpp:26:
../deps/icu-small/source/common/putilimp.h:226:20: error: missing binary
operator before token "("
 #elif __has_builtin(__c11_atomic_load) && \
                    ^

tools/icu/icui18n.target.mk:337: recipe for target '/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o' failed
make[2]: *** [/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/rbt_pars.o] Error 1
make[2]: *** Waiting for unfinished jobs....
tools/icu/icui18n.target.mk:337: recipe for target '/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tzgnames.o' failed
make[2]: *** [/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/out/Release/obj.target/icui18n/deps/icu-small/source/i18n/tzgnames.o] Error 1
Makefile:101: recipe for target 'node' failed
make[1]: *** [node] Error 2
make[1]: Leaving directory
'/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1'
package/pkg-generic.mk:266: recipe for target '/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/.stamp_built'
failed
make: ***
[/home/linuxguru/Desktop/buildroot/buildroot-2020.02/output/build/host-nodejs-12.16.1/.stamp_built]
Error 2

uname -a
Linux ptinstitute 5.3.0-51-generic #44~18.04.2-Ubuntu SMP Thu Apr 23 14:27:18 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#1 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

https://bugs.busybox.net/show_bug.cgi?id=12876

--- Comment #1 from Fabrice Fontaine <[email protected]> ---
I think that the following patch should fix your build failure:
https://patchwork.ozlabs.org/project/buildroot/patch/20200218031521.32988-1-james.hilliard1 at gmail.com

However, it was not yet merged.
Can you confirm that this patch fix your issue?

Best Regards,

Fabrice

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#2 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

--- Comment #2 from yogesh kumar sharma <[email protected]> --- (In reply to Fabrice Fontaine from comment #1)
it not solve the issue.
what i did was i opened file nodejs.mk and added the line suggested like this

(cd $(@D); \
                $(HOST_CONFIGURE_OPTS) \
                PATH=$(@D)/bin:$(BR_PATH) \
                PYTHON=$(HOST_DIR)/bin/python2 \
                $(HOST_DIR)/bin/python2 ./configure \
                --prefix=$(HOST_DIR) \
                --without-snapshot \
                --without-dtrace \
                --without-etw \
                --shared-openssl \
                --shared-openssl-includes=$(HOST_DIR)/include/openssl \
                --shared-openssl-libpath=$(HOST_DIR)/lib \
                --shared-zlib \
                --shared-zlib-includes=$(HOST_ZLIB_SRCDIR) \
                --shared-zlib-libpath=$(HOST_DIR)/lib \
                --no-cross-compiling \
                --with-intl=small-icu \

is that ok? or i have to add through patch. Actual i am not aware of how to add patch in buildroot.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#3 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------
Severity|blocker |critical

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#4 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

--- Comment #3 from Markus Zehnder <[email protected]> ---
(In reply to Fabrice Fontaine from comment #1)
Thanks Fabrice!
I had the exact same issue with Buildroot 2020.02.2 and the linked patch solved it.
Please include it in the next release.

Best regards,
Markus

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#5 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

--- Comment #4 from yogesh kumar sharma <[email protected]> --- (In reply to Markus Zehnder from comment #3)
can you suggest the steps you followed to solve or you can share some link where i get the procedure to apply patch.

how to apply this patch to buildroot?
Thanks in advance

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#6 lore raw

[Buildroot] [Bug 12876] putilimp.h **error**: missing binary operator before token "(" #elif __has_builtin(__c11_atomic_load) && \

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

--- Comment #5 from Peter Seiderer <[email protected]> --- (In reply to yogesh kumar sharma from comment #4)

    $ wget https://buildroot.org/downloads/buildroot-2020.02.2.tar.bz2
    $ wget -O
v5-1-1-package-nodejs-Use-zlib-headers-from-HOST_ZLIB_SRCDIR-for-host-nodejs.patch
https://patchwork.ozlabs.org/project/buildroot/patch/20200218031521.32988-1-james.hilliard1 at gmail.com/mbox/
    $ tar -xvjf buildroot-2020.02.2.tar.bz2
    $ cd buildroot-2020.02.2
    $ patch -p 1 <
../v5-1-1-package-nodejs-Use-zlib-headers-from-HOST_ZLIB_SRCDIR-for-host-nodejs.patch

Do not forget to do an complete re-build of@least the host-nodejs package, best by removing the existing host-nodejs build directory, e.g.:

    $ rm -rf output/build/host-nodejs-12.16.1

or a global re-build

     $ make clean && make
Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#7 lore raw

[Buildroot] [Bug 12876] nodejs fails to build when host-icu has been built before

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

            Summary|putilimp.h **error**:       |nodejs fails to build when
                   |missing binary operator     |host-icu has been built
                   |before token "(" #elif      |before
                   |__has_builtin(__c11_atomic_ |
                   |load) && \                  |
Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#8 lore raw

[Buildroot] [Bug 12876] nodejs fails to build when host-icu has been built before

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------
CC| |seems.deviant at gmail.com

--- Comment #6 from Thomas Petazzoni <[email protected]> --- *** Bug 12921 has been marked as a duplicate of this bug. ***

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.
#9 lore raw

[Buildroot] [Bug 12876] nodejs fails to build when host-icu has been built before

In reply to bugzilla at busybox.net

https://bugs.busybox.net/show_bug.cgi?id=12876

Thomas Petazzoni <[email protected]> changed:

What |Removed |Added
----------------------------------------------------------------------------

         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #7 from Thomas Petazzoni <[email protected]> --- This was fixed by
https://git.buildroot.org/buildroot/commit/package/nodejs?id=319f7b0dab761483c7bf60dd933aa8ec485a06e1.

Signature · 2 lines
You are receiving this mail because:
You are on the CC list for the bug.