Build failing on Fedora 32
Closed this issue · 1 comments
snits commented
# script/build
Creating an optimized build, using build cache to speed up build.
Specifying --fast skips optimizations and takes less than two minutes.
Fetching Google Closure Compiler...
Cleaning up Google Closure Compiler archive...
Fetching Google Closure Library...
Cleaning up Google Closure Library archive...
### Building planck-cljs
Downloading: org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.pom from https://repo1.maven.org/maven2/
Downloading: org/clojure/google-closure-library-third-party/0.0-20190213-2033d5d9/google-closure-library-third-party-0.0-20190213-2033d5d9.pom from https://repo1.maven.org/maven2/
Downloading: org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar from https://repo1.maven.org/maven2/
Downloading: org/clojure/google-closure-library-third-party/0.0-20190213-2033d5d9/google-closure-library-third-party-0.0-20190213-2033d5d9.jar from https://repo1.maven.org/maven2/
WARNING: JavaScript file found on classpath for library `goog.messaging.testdata.portchannel_worker`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/messaging/testdata/portchannel_worker.js
WARNING: JavaScript file found on classpath for library `goog.messaging.testdata.portnetwork_worker1`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/messaging/testdata/portnetwork_worker1.js
WARNING: JavaScript file found on classpath for library `goog.messaging.testdata.portnetwork_worker2`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/messaging/testdata/portnetwork_worker2.js
WARNING: JavaScript file found on classpath for library `goog.module.testdata.modA_1`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/module/testdata/modA_1.js
WARNING: JavaScript file found on classpath for library `goog.module.testdata.modA_2`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/module/testdata/modA_2.js
WARNING: JavaScript file found on classpath for library `goog.module.testdata.modB_1`, but does not contain a corresponding `goog.provide` declaration: jar:file:/home/jsnitsel/.m2/repository/org/clojure/google-closure-library/0.0-20190213-2033d5d9/google-closure-library-0.0-20190213-2033d5d9.jar!/goog/module/testdata/modB_1.js
### Building planck-c
### Bundling ClojureScript artifacts for 1st stage
### Optimizing bundled JavaScript with Closure Optimizations: SIMPLE
................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................planck/io.js:820:
Originally at:
planck/io.cljs:272: WARNING - Left operand of || operator is always falsy.
(if (satisfies? planck.core/IReader x)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/io.js:837:
Originally at:
planck/io.cljs:280: WARNING - Left operand of || operator is always falsy.
(if (satisfies? planck.core/IInputStream x)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/io.js:845:
Originally at:
planck/io.cljs:284: WARNING - Left operand of || operator is always falsy.
(if (satisfies? planck.core/IOutputStream x)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/io.js:1538:
Originally at:
planck/io.cljs:624: WARNING - Left operand of || operator is always falsy.
:reader #(implements? planck.core/IReader %)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0 error(s), 4 warning(s)
......planck/core.js:706:
Originally at:
planck/core.cljs:231: WARNING - Left operand of || operator is always falsy.
:unary (s/cat :reader #(satisfies? IPushbackReader %))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/core.js:720:
Originally at:
planck/core.cljs:232: WARNING - Left operand of || operator is always falsy.
:binary (s/cat :opts map? :reader #(satisfies? IPushbackReader %))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/core.js:734:
Originally at:
planck/core.cljs:233: WARNING - Left operand of || operator is always falsy.
:ternary (s/cat :reader #(satisfies? IPushbackReader %) :eof-error? boolean? :eof-value any?)))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
planck/core.js:1179:
Originally at:
planck/core.cljs:494: WARNING - Left operand of || operator is always falsy.
:args (s/cat :rdr #(satisfies? IPushbackReader %))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0 error(s), 4 warning(s)
......
### Building 1st stage Planck binary
/usr/bin/ld: CMakeFiles/planck.dir/clock.c.o:(.bss+0x0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/engine.c.o:(.data+0x8): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/functions.c.o:(.bss+0x3e8): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/http.c.o:(.bss+0x0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/main.c.o:(.bss+0xc0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/repl.c.o:(.bss+0x88): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/shell.c.o:(.bss+0x0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/sockets.c.o:(.bss+0x0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
/usr/bin/ld: CMakeFiles/planck.dir/timers.c.o:(.bss+0x0): multiple definition of `block_until_engine_ready_failed_msg'; CMakeFiles/planck.dir/archive.c.o:(.bss+0x0): first defined here
collect2: error: ld returned 1 exit status
make[2]: *** [CMakeFiles/planck.dir/build.make:405: planck] Error 1
make[1]: *** [CMakeFiles/Makefile2:96: CMakeFiles/planck.dir/all] Error 2
make: *** [Makefile:104: all] Error 2
Build Failed.
Looks like adding extern to the block_until_engine_ready_failed_msg declaration in planck-c/engine.h resolves this.
mfikes commented
Reproducible with planck-repl/build-envs@ec816b4