Build fail with error[E0428]: the name `wr_translate_font_instance_platform_options` is defined multiple times
yoricfr opened this issue ยท 9 comments
Description
I can't build the "Hello World" basic application when adding the Azul dependency.
It might just be me, I'm just getting started with Rust.
Version / OS
rustc 1.43.0 (4fb7144ed 2020-04-20)
cargo 1.43.0 (3532cf738 2020-03-17)
cmake version 3.17.2
-
azul version:
v0.1.0 (master branch) -
Operating system:
MacOS Catalina (10.15.2)
Steps to Reproduce
-
brew install cmake
-
cargo new --bin azul_test
-
cd azul_test
-
edit "Cargo.toml" to add dependency:
[dependencies]
azul = { git = "https://github.com/maps4print/azul" } -
cargo build
Additional Information
$ cargo build
Updating git repository `https://github.com/maps4print/azul`
Updating crates.io index
Compiling libc v0.2.69
Compiling autocfg v1.0.0
Compiling cfg-if v0.1.10
Compiling log v0.4.8
Compiling cc v1.0.52
Compiling core-foundation-sys v0.6.2
Compiling proc-macro2 v0.4.30
Compiling bitflags v1.2.1
Compiling foreign-types-shared v0.1.1
Compiling khronos_api v3.1.0
Compiling unicode-xid v0.1.0
Compiling syn v0.15.44
Compiling xml-rs v0.8.3
Compiling byteorder v1.3.4
Compiling typenum v1.12.0
Compiling proc-macro2 v1.0.12
Compiling serde v1.0.80
Compiling pkg-config v0.3.17
Compiling unicode-xid v0.2.0
Compiling lazy_static v1.4.0
Compiling maybe-uninit v2.0.0
Compiling syn v1.0.18
Compiling byte-tools v0.3.1
Compiling azul-css v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling azul-simplecss v0.1.1
Compiling block v0.1.6
Compiling scopeguard v1.1.0
Compiling opaque-debug v0.2.3
Compiling fake-simd v0.1.2
Compiling rayon-core v1.7.0
Compiling core-video-sys v0.1.3
Compiling smallvec v1.4.0
Compiling procedural-masquerade v0.1.6
Compiling instant v0.1.3
Compiling binary-space-partition v0.1.2
Compiling dispatch v0.1.4
Compiling either v1.5.3
Compiling thread_profiler v0.1.3
Compiling rustc-demangle v0.1.16
Compiling xmlparser v0.9.0
Compiling num-traits v0.2.11
Compiling crossbeam-utils v0.7.2
Compiling memoffset v0.5.4
Compiling crossbeam-epoch v0.8.2
Compiling num-integer v0.1.42
Compiling foreign-types v0.3.2
Compiling cmake v0.1.42
Compiling backtrace-sys v0.1.37
Compiling tinyfiledialogs v3.3.9
Compiling block-padding v0.1.5
Compiling harfbuzz-sys v0.3.4
Compiling unicode-normalization v0.1.12
Compiling servo-freetype-sys v4.0.5
Compiling core-foundation v0.6.4
Compiling malloc_buf v0.0.6
Compiling time v0.1.43
Compiling num_cpus v1.13.0
Compiling raw-window-handle v0.3.3
Compiling cgl v0.3.2
Compiling gl_generator v0.13.1
Compiling quote v0.6.13
Compiling fxhash v0.2.1
Compiling azul-css-parser v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling quote v1.0.4
Compiling smallvec v0.6.13
Compiling generic-array v0.12.3
Compiling crossbeam-queue v0.2.1
Compiling objc v0.2.7
Compiling core-graphics v0.17.3
Compiling core-graphics v0.14.0
Compiling backtrace v0.3.46
Compiling azul-native-style v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling gleam v0.6.19
Compiling glutin_gles2_sys v0.1.4
Compiling digest v0.8.1
Compiling block-buffer v0.7.3
Compiling crossbeam-deque v0.7.3
Compiling objc_id v0.1.1
Compiling chrono v0.4.11
Compiling core-text v13.3.2
Compiling cocoa v0.19.1
Compiling core-text v10.0.0
Compiling sha2 v0.8.1
Compiling synstructure v0.12.3
Compiling objc-foundation v0.1.1
Compiling serde_derive v1.0.80
Compiling euclid_macros v0.1.0
Compiling derive_more v0.13.0
Compiling fern v0.5.9
Compiling font-loader v0.8.0
Compiling webrender_build v0.0.1
Compiling winit v0.20.0
Compiling cstr-macros v0.1.6
Compiling rayon v1.3.0
Compiling clipboard2 v0.1.1
Compiling malloc_size_of_derive v0.1.1
Compiling freetype v0.4.1
Compiling webrender v0.60.0
Compiling cstr v0.1.7
Compiling glutin v0.22.1
Compiling azul-core v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling euclid v0.19.9
Compiling app_units v0.7.1
Compiling bincode v1.2.1
Compiling serde_bytes v0.10.5
Compiling azul-text-layout v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling azul-widgets v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling azul-layout v0.1.0 (https://github.com/maps4print/azul#7ed96030)
Compiling wr_malloc_size_of v0.0.1
Compiling plane-split v0.13.9
Compiling webrender_api v0.60.0
Compiling azul v0.1.0 (https://github.com/maps4print/azul#7ed96030)
error[E0428]: the name `wr_translate_font_instance_platform_options` is defined multiple times
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:655:1
|
646 | fn wr_translate_font_instance_platform_options(fio: FontInstancePlatformOptions) -> WrFontInstancePlatformOptions {
| ----------------------------------------------------------------------------------------------------------------- previous definition of the value `wr_translate_font_instance_platform_options` here
...
655 | const fn wr_translate_font_instance_platform_options(fio: FontInstancePlatformOptions) -> WrFontInstancePlatformOptions {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `wr_translate_font_instance_platform_options` redefined here
|
= note: `wr_translate_font_instance_platform_options` must be defined only once in the value namespace of this module
error[E0432]: unresolved import `glutin::platform::windows`
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/window.rs:580:27
|
580 | use glutin::platform::windows::WindowBuilderExtMac;
| ^^^^^^^ could not find `windows` in `platform`
error[E0432]: unresolved import `glutin::platform::macos::WindowExtMacOs`
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/window.rs:860:9
|
860 | use glutin::platform::macos::WindowExtMacOs;
| ^^^^^^^^^^^^^^^^^^^^^^^^^--------------
| | |
| | help: a similar name exists in the module (notice the capitalization): `WindowExtMacOS`
| no `WindowExtMacOs` in `platform::macos`
error[E0432]: unresolved import `glutin::platform::macos::WindowExtMacOs`
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/window.rs:904:9
|
904 | use glutin::platform::macos::WindowExtMacOs;
| ^^^^^^^^^^^^^^^^^^^^^^^^^--------------
| | |
| | help: a similar name exists in the module (notice the capitalization): `WindowExtMacOS`
| no `WindowExtMacOs` in `platform::macos`
error[E0432]: unresolved import `crate::glutin::platform::unix`
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/window.rs:1007:34
|
1007 | use crate::glutin::platform::unix::EventLoopWindowTargetExtUnix;
| ^^^^ could not find `unix` in `platform`
error[E0432]: unresolved imports `webrender::api::FontLCDFilter`, `webrender::api::FontHinting`
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:53:5
|
53 | FontLCDFilter as WrFontLCDFilter,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FontLCDFilter` in `api`
54 | FontHinting as WrFontHinting,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FontHinting` in `api`
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:123:73
|
123 | pub(crate) fn translate_logical_position(input: LogicalPosition) -> WinitLogicalPosition {
| ^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:128:65
|
128 | pub(crate) fn translate_logical_size(input: LogicalSize) -> WinitLogicalSize {
| ^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:133:65
|
133 | pub(crate) const fn translate_winit_logical_position(input: WinitLogicalPosition) -> LogicalPosition {
| ^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:138:61
|
138 | pub(crate) const fn translate_winit_logical_size(input: WinitLogicalSize) -> LogicalSize {
| ^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:163:75
|
163 | pub(crate) fn translate_physical_position(input: PhysicalPosition) -> WinitPhysicalPosition {
| ^^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> /Users/ym/.cargo/git/checkouts/azul-f3b1e21a5e685cad/7ed9603/cargo/azul/../../azul/wr_translate.rs:167:67
|
167 | pub(crate) fn translate_physical_size(input: PhysicalSize) -> WinitPhysicalSize {
| ^^^^^^^^^^^^^^^^^ expected 1 type argument
error: aborting due to 12 previous errors
Some errors have detailed explanations: E0107, E0428, E0432.
For more information about an error, try `rustc --explain E0107`.
error: could not compile `azul`.
To learn more, run the command again with --verbose.
warning: build failed, waiting for other jobs to finish...
error: build failed
Hit the same problem compiling on Windows with master. I have the latest version of cmake x64 and Rust v1.43.1.
Here's the relevant error list when running cargo build with azul at master 7ed96030:
Compiling azul v0.1.0 (https://github.com/maps4print/azul#7ed96030)
error[E0428]: the name `wr_translate_font_instance_platform_options` is defined multiple times
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:646:1
|
618 | const fn wr_translate_font_instance_platform_options(fio: FontInstancePlatformOptions) -> WrFontInstancePlatformOptions {
| ----------------------------------------------------------------------------------------------------------------------- previous definition of the value `wr_translate_font_instance_platform_options` here
...
646 | fn wr_translate_font_instance_platform_options(fio: FontInstancePlatformOptions) -> WrFontInstancePlatformOptions {
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `wr_translate_font_instance_platform_options` redefined here
|
= note: `wr_translate_font_instance_platform_options` must be defined only once
in the value namespace of this module
error[E0432]: unresolved import `crate::glutin::platform::unix`
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\window.rs:1007:34
|
1007 | use crate::glutin::platform::unix::EventLoopWindowTargetExtUnix;
| ^^^^ could not find `unix` in `platform`
error[E0432]: unresolved imports `webrender::api::FontLCDFilter`, `webrender::api::FontHinting`
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:53:5
|
53 | FontLCDFilter as WrFontLCDFilter,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FontLCDFilter` in `api`
54 | FontHinting as WrFontHinting,
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ no `FontHinting` in `api`
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:123:73
|
123 | pub(crate) fn translate_logical_position(input: LogicalPosition) -> WinitLogicalPosition {
| ^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:128:65
|
128 | pub(crate) fn translate_logical_size(input: LogicalSize) -> WinitLogicalSize {
| ^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:133:65
|
133 | pub(crate) const fn translate_winit_logical_position(input: WinitLogicalPosition) -> LogicalPosition {
| ^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:138:61
|
138 | pub(crate) const fn translate_winit_logical_size(input: WinitLogicalSize)
-> LogicalSize {
| ^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:163:75
|
163 | pub(crate) fn translate_physical_position(input: PhysicalPosition) -> WinitPhysicalPosition {
| ^^^^^^^^^^^^^^^^^^^^^ expected 1 type argument
error[E0107]: wrong number of type arguments: expected 1, found 0
--> C:\Users\Klemen\.cargo\git\checkouts\azul-f3b1e21a5e685cad\7ed9603\cargo\azul\../../azul\wr_translate.rs:167:67
|
167 | pub(crate) fn translate_physical_size(input: PhysicalSize) -> WinitPhysicalSize {
| ^^^^^^^^^^^^^^^^^ expected 1 type argument
error: aborting due to 9 previous errors
Some errors have detailed explanations: E0107, E0428, E0432.
For more information about an error, try `rustc --explain E0107`.
error: could not compile `azul`.
To learn more, run the command again with --verbose.
Same error. Bummer.
rustc 1.42.0 (b8cedc004 2020-03-09)
host: x86_64-apple-darwin
release: 1.42.0
LLVM version: 9.0
and after update
rustc 1.43.1 (8d69840ab 2020-05-04)
host: x86_64-apple-darwin
release: 1.43.1
LLVM version: 9.0
Same here.
rustc 1.43.1 (8d69840ab 2020-05-04)
toolchain: stable-x86_64-pc-windows-msvc (default)
cmake version 3.17.2
If I understand the code correctly there are free versions of the wr_translate_font_instance_platform_options function: one for windows, one for mac and then a generic one. Maybe it was forgotten to tag it with #[cfg(not(any(target_os = "macos", target_os = "windows")))]?
How do I do that @IQBigBang ?
Having the same issue
I am currently not fixing this bug, because it's already been fixed on the /wip branch.
However, the wip branch is currently undergoing reconstruction, in order to have the ability to compile azul into a dynamically linked library with a publicly documented, auto-generated, C-compatible API, to reduce re-compilation times. Parts of azul are already on crates.io, for example azul-desktop and other crates.
Please rely on crates.io, not on this repository. This issue is fixed, but the fix is not yet merged into the master branch. For now, azul is not buildable, please be patient.
Okay! Thanks for the info.
Same error, but following solved me to proceed further..
Ubuntu: 20.04
set versions of following in cargo.toml
glutin = { version = "=0.22.0-alpha3" }
winit = { version = "=0.20.0-alpha3" }
and a missing libraries atleast in my case:
libxcb-composite0-dev
Solved the issue.
This is an old bug related to the dependencies, this should be fixed on master now.
git clone https://github.com/maps4print/azul
cd azul/azul-dll
cargo build --release
export AZUL_LINK_PATH=/target/release/
cd ../examples
cargo run --release --bin table
Please reopen if this bug still exists (it shouldn't, but still).