Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fails to build on Fedora 28 on ppc64 #3

Open
Conan-Kudo opened this issue Feb 2, 2019 · 8 comments
Open

Fails to build on Fedora 28 on ppc64 #3

Conan-Kudo opened this issue Feb 2, 2019 · 8 comments

Comments

@Conan-Kudo
Copy link
Contributor

I'm trying to build GlibD 2.0.2 on ppc64 for Fedora 28 using gir-to-d 0.18.0, and I'm getting the following error:

[1/332] ldc2 -Iglibd-2.0@sha -I. -I.. -Igenerated -I../generated -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -enable-color -release -w -g -O1 -relocation-model=pic   -of 'glibd-2.0@sha/ppc64-redhat-linux-gnu_generated_gtkd_Implement.d.o' -c ../ppc64-redhat-linux-gnu/generated/gtkd/Implement.d
FAILED: glibd-2.0@sha/ppc64-redhat-linux-gnu_generated_gtkd_Implement.d.o
ldc2 -Iglibd-2.0@sha -I. -I.. -Igenerated -I../generated -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -enable-color -release -w -g -O1 -relocation-model=pic   -of 'glibd-2.0@sha/ppc64-redhat-linux-gnu_generated_gtkd_Implement.d.o' -c ../ppc64-redhat-linux-gnu/generated/gtkd/Implement.d
generated/gobject/c/types.d(173): Error: basic type expected, not `private`
generated/gobject/c/types.d(173): Error: no identifier for declarator `_error_`
generated/gobject/c/types.d(173): Error: type only allowed if anonymous enum and no enum type
generated/gobject/c/types.d(173): Error: if type, there must be an initializer
generated/gobject/c/types.d(173): Error: found `private` when expecting `,`
generated/gobject/c/types.d(173): Error: basic type expected, not `=`
generated/gobject/c/types.d(173): Error: no identifier for declarator `_error_`
generated/gobject/c/types.d(173): Error: type only allowed if anonymous enum and no enum type
generated/gobject/c/types.d(201): Error: basic type expected, not `deprecated`
generated/gobject/c/types.d(201): Error: no identifier for declarator `_error_`
generated/gobject/c/types.d(201): Error: type only allowed if anonymous enum and no enum type
generated/gobject/c/types.d(201): Error: if type, there must be an initializer
generated/gobject/c/types.d(201): Error: found `deprecated` when expecting `,`
generated/gobject/c/types.d(201): Error: basic type expected, not `=`
generated/gobject/c/types.d(201): Error: no identifier for declarator `_error_`
generated/gobject/c/types.d(201): Error: type only allowed if anonymous enum and no enum type
generated/gobject/c/types.d(258): Error: basic type expected, not `deprecated`
generated/gobject/c/types.d(258): Error: no identifier for declarator `_error_`
generated/gobject/c/types.d(258): Error: type only allowed if anonymous enum and no enum type
generated/gobject/c/types.d(258): Error: if type, there must be an initializer

Any idea what's causing that?

@MikeWey
Copy link
Member

MikeWey commented Feb 2, 2019

Could you check line 173 of generated/gobject/c/types.d the enum members should all be upper case, but from the error it looks like that isn't the case for you.

And what version of ldc are you using?

@Conan-Kudo
Copy link
Contributor Author

@MikeWey This is with LDC 1.8.0.

line 173:

        private = 32,

@Conan-Kudo
Copy link
Contributor Author

It appears that all the enums are lower case.

@MikeWey
Copy link
Member

MikeWey commented Feb 3, 2019

It looks like ldc's support for ppc64 is broken, which is why the call to toUpper used by gir-to-d doesn't work.

ldc-developers/ldc#2410

@Conan-Kudo
Copy link
Contributor Author

I see. 😢

@MikeWey
Copy link
Member

MikeWey commented Feb 3, 2019

You could try GDC if it's available.

@Conan-Kudo
Copy link
Contributor Author

Conan-Kudo commented Feb 3, 2019

GDC unfortunately just became available for Fedora 30, since it was only just mainlined into GCC for GCC 9.

Debian had been patching in GDC into their GCC builds for years, but Fedora had not.

@Cogitri
Copy link

Cogitri commented Feb 23, 2020

I don't think GDC can be used on ppc64 either since libgphobos doesn't build on ppc64(le) yet apparently

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants