gnunn1 / tilix

A tiling terminal emulator for Linux using GTK+ 3
https://gnunn1.github.io/tilix-web
Mozilla Public License 2.0
5.34k stars 294 forks source link

Linking error with meson+dmd #2210

Open rautyrauty opened 4 months ago

rautyrauty commented 4 months ago

when trying to build with meson+dmd, the following error occurs:

[137/171] Linking target tilix
FAILED: tilix 
dmd  -of=tilix tilix.p/source_gx_gtk_actions.d.o tilix.p/source_gx_gtk_cairo.d.o tilix.p/source_gx_gtk_clipboard.d.o tilix.p/source_gx_gtk_color.d.o tilix.p/source_gx_gtk_dialog.d.o tilix.p/source_gx_gtk_resource.d.o tilix.p/source_gx_gtk_settings.d.o tilix.p/source_gx_gtk_threads.d.o tilix.p/source_gx_gtk_util.d.o tilix.p/source_gx_gtk_vte.d.o tilix.p/source_gx_gtk_x11.d.o tilix.p/source_gx_i18n_l10n.d.o tilix.p/source_gx_tilix_bookmark_bmchooser.d.o tilix.p/source_gx_tilix_bookmark_bmeditor.d.o tilix.p/source_gx_tilix_bookmark_bmtreeview.d.o tilix.p/source_gx_tilix_bookmark_manager.d.o tilix.p/source_gx_tilix_prefeditor_advdialog.d.o tilix.p/source_gx_tilix_prefeditor_bookmarkeditor.d.o tilix.p/source_gx_tilix_prefeditor_common.d.o tilix.p/source_gx_tilix_prefeditor_prefdialog.d.o tilix.p/source_gx_tilix_prefeditor_profileeditor.d.o tilix.p/source_gx_tilix_prefeditor_titleeditor.d.o tilix.p/source_gx_tilix_terminal_actions.d.o tilix.p/source_gx_tilix_terminal_activeprocess.d.o tilix.p/source_gx_tilix_terminal_advpaste.d.o tilix.p/source_gx_tilix_terminal_exvte.d.o tilix.p/source_gx_tilix_terminal_layout.d.o tilix.p/source_gx_tilix_terminal_monitor.d.o tilix.p/source_gx_tilix_terminal_password.d.o tilix.p/source_gx_tilix_terminal_regex.d.o tilix.p/source_gx_tilix_terminal_search.d.o tilix.p/source_gx_tilix_terminal_terminal.d.o tilix.p/source_gx_tilix_terminal_util.d.o tilix.p/source_gx_tilix_application.d.o tilix.p/source_gx_tilix_appwindow.d.o tilix.p/source_gx_tilix_closedialog.d.o tilix.p/source_gx_tilix_cmdparams.d.o tilix.p/source_gx_tilix_colorschemes.d.o tilix.p/source_gx_tilix_common.d.o tilix.p/source_gx_tilix_constants.d.o tilix.p/source_gx_tilix_customtitle.d.o tilix.p/source_gx_tilix_encoding.d.o tilix.p/source_gx_tilix_preferences.d.o tilix.p/source_gx_tilix_session.d.o tilix.p/source_gx_tilix_shortcuts.d.o tilix.p/source_gx_tilix_sidebar.d.o tilix.p/source_gx_util_array.d.o tilix.p/source_gx_util_path.d.o tilix.p/source_gx_util_string.d.o tilix.p/source_secret_Collection.d.o tilix.p/source_secret_Item.d.o tilix.p/source_secret_Prompt.d.o tilix.p/source_secret_Schema.d.o tilix.p/source_secret_SchemaAttribute.d.o tilix.p/source_secret_Secret.d.o tilix.p/source_secret_Service.d.o tilix.p/source_secret_Value.d.o tilix.p/source_secretc_secret.d.o tilix.p/source_secretc_secrettypes.d.o tilix.p/source_x11_X.d.o tilix.p/source_x11_Xlib.d.o tilix.p/source_app.d.o -L=--allow-shlib-undefined -defaultlib=phobos2 -debuglib=phobos2 -L=-lm -L-L/usr/lib64/ -L-lgtkd-3 -L-ldl -L=-lgtk-3 -L=-lgdk-3 -L=-lz -L=-latk-1.0 -L=-lcairo-gobject -L=-lpangocairo-1.0 -L=-lpango-1.0 -L=-lharfbuzz -L=-lrsvg-2 -L=-lgdk_pixbuf-2.0 -L=-lcairo -L=-lgio-2.0 -L=-lgobject-2.0 -L=-lglib-2.0 -L=-lm -L-lvted-3 -L-L/usr/lib64/ -L-lgtkd-3 -L-ldl -L=-lrsvg-2 -L=-lvte-2.91 -L=-lgtk-3 -L=-lgdk-3 -L=-lz -L=-lpangocairo-1.0 -L=-lpango-1.0 -L=-lharfbuzz -L=-latk-1.0 -L=-lcairo-gobject -L=-lcairo -L=-lgdk_pixbuf-2.0 -L=-lgio-2.0 -L=-lgobject-2.0 -L=-lglib-2.0 -L=-lX11 -L=-lunwind
ld: tilix.p/source_gx_tilix_terminal_terminal.d.o: in function `_D2gx5tilix6common__T12GenericEventTEQBjQBjQBg10ActionTypeTCQCgQCgQCd__T16CumulativeResultTbZQvZQCx11__xopEqualsMxFKxSQEmQEmQEj__TQEfTQDuTQDbZQErZb':
../source/gx/tilix/terminal/terminal.d:(.text._D2gx5tilix6common__T12GenericEventTEQBjQBjQBg10ActionTypeTCQCgQCgQCd__T16CumulativeResultTbZQvZQCx11__xopEqualsMxFKxSQEmQEmQEj__TQEfTQDuTQDbZQErZb[_D2gx5tilix6common__T12GenericEventTEQBjQBjQBg10ActionTypeTCQCgQCgQCd__T16CumulativeResultTbZQvZQCx11__xopEqualsMxFKxSQEmQEmQEj__TQEfTQDuTQDbZQErZb]+0x39): undefined reference to `_D4core8internal5array8equality__T8__equalsTxDFE2gx5tilix6common10ActionTypeCQBdQBdQBa__T16CumulativeResultTbZQvZvTxQCtZQDiFNaNbNiNfMAxQDmMQgZb'
ld: tilix.p/source_gx_tilix_terminal_terminal.d.o: in function `_D2gx5tilix6common__T12GenericEventTAyaTQeTQhTQkZQBc11__xopEqualsMxFKxSQCrQCrQCo__TQCkTQBzTQCdTQChTQClZQDeZb':
../source/gx/tilix/terminal/terminal.d:(.text._D2gx5tilix6common__T12GenericEventTAyaTQeTQhTQkZQBc11__xopEqualsMxFKxSQCrQCrQCo__TQCkTQBzTQCdTQChTQClZQDeZb[_D2gx5tilix6common__T12GenericEventTAyaTQeTQhTQkZQBc11__xopEqualsMxFKxSQCrQCrQCo__TQCkTQBzTQCdTQChTQClZQDeZb]+0x39): undefined reference to `_D4core8internal5array8equality__T8__equalsTxDFAyaQdQfQhZvTxQpZQBdFNaNbNiNfMAxQBhMQgZb'
ld: tilix.p/source_gx_tilix_appwindow.d.o: in function `_D2gx5tilix6common__T12GenericEventTCQBjQBj7session7SessionZQBn11__xopEqualsMxFKxSQDcQDcQCz__TQCvTQCkZQDdZb':
../source/gx/tilix/appwindow.d:(.text._D2gx5tilix6common__T12GenericEventTCQBjQBj7session7SessionZQBn11__xopEqualsMxFKxSQDcQDcQCz__TQCvTQCkZQDdZb[_D2gx5tilix6common__T12GenericEventTCQBjQBj7session7SessionZQBn11__xopEqualsMxFKxSQDcQDcQCz__TQCvTQCkZQDdZb]+0x39): undefined reference to `_D4core8internal5array8equality__T8__equalsTxDFC2gx5tilix7session7SessionZvTxQBgZQBvFNaNbNiNfMAxQBzMQgZb'
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
the-horo commented 2 months ago

There is a bug open in dmd about this issue: https://issues.dlang.org/show_bug.cgi?id=20668. I've commented that tilix is affected but that's pretty much all I can do.

rautyrauty commented 2 months ago

Hmm, interesting. Please write about this bug and -allinst flag in the build guide. Thanks!

I also suggest you move the build guide from the readme to a separate file. An ordinary users will not need a build guide, they will just download or install it from the distribution repository.

the-horo commented 2 months ago

Hmm, interesting. Please write about this bug and -allinst flag in the build guide. Thanks!

I also suggest you move the build guide from the readme to a separate file. An ordinary users will not need a build guide, they will just download or install it from the distribution repository.

I'm not a tilix developer so I can't help you with that. I've made a PR that changes meson.build to add the correct flags when compiling with dmd and gdc.