I see that stc sample gets linked with scintilla and lexilla, yet both libraries were not installed when building wxWidgets as shared libraries. libwxscintilla and libwxlexilla were built, but did not get installed with sudo make install command. Tested on Ubuntu 22.04.2 LTS
https://github.com/wxWidgets/wxWidgets/pull/23707
(1 file)
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
I think that is actually a bug with the sample's link line. The scintilla and lexilla libraries should be linked into the wxstc shared library already, so there shouldn't be a need for the static libraries to be installed and linked against by the user code when the shared library is used. (see https://github.com/wxWidgets/wxWidgets/blob/44b99195bc4395944bab8071c6d7adcbdcdf8773/Makefile.in#L13627 for where it is already linked into wxstc).
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
I don't see that libwx_gtk3u_stc-3.3.so.0.0.0 exports any scintilla and lexilla methods. For example, there are no Scintilla::AutoComplete, Scintilla::CallTip etc, nor are there any LexerX12::Factory, Scintilla::LexerBase etc. And when you compile with --disable-shared, libwxscintilla-3.3.a and libwxlexilla-3.3.a gets installed within /usr/local/lib
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
I don't see that libwx_gtk3u_stc-3.3.so.0.0.0 exports any scintilla and lexilla methods.
wx provides a wrapper over scintilla and lexilla, so it doesn't rexport them, you use wx functions to access the underlying Scintilla objects instead.
And when you compile with --disable-shared, libwxscintilla-3.3.a and libwxlexilla-3.3.a gets installed within /usr/local/lib
That's because they are needed when wx is a static library. As a static library, wx_stc only includes the wx wrapper portion of the wxstc control, and so it has to provide the wxscintilla and wxlexilla libraries so the wx library can link properly. That is all handled at build time by for the shared library, so it isn't needed there.
As an experiment, you can remove the libraries for wxscintilla and wxlexilla from the link line in the makefile (see line 162 of the master version) and try it. I removed those two libraries and the stc sample still linked properly and opened.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
I did a further test. I went directly into ./sample/stc directory and ran make.
Below is the output:
~/wxWidgets/debug/samples/stc$ make
/home/dvertx/wxWidgets/debug/bk-deps g++ -c -o stctest_stctest.o -I/home/dvertx/wxWidgets/debug/lib/wx/include/gtk3-unicode-3.3 -I../../../include -D_FILE_OFFSET_BITS=64 -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/x86_64-linux-gnu -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -D__WXGTK__ -I../../../samples/stc -DWXUSINGDLL -I../../../samples/stc/../../samples -pthread -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -O2 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gtk-3.0/unix-print -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -DPIC ../../../samples/stc/stctest.cpp
/home/dvertx/wxWidgets/debug/bk-deps g++ -c -o stctest_edit.o -I/home/dvertx/wxWidgets/debug/lib/wx/include/gtk3-unicode-3.3 -I../../../include -D_FILE_OFFSET_BITS=64 -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/x86_64-linux-gnu -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -D__WXGTK__ -I../../../samples/stc -DWXUSINGDLL -I../../../samples/stc/../../samples -pthread -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -O2 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gtk-3.0/unix-print -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -DPIC ../../../samples/stc/edit.cpp
/home/dvertx/wxWidgets/debug/bk-deps g++ -c -o stctest_prefs.o -I/home/dvertx/wxWidgets/debug/lib/wx/include/gtk3-unicode-3.3 -I../../../include -D_FILE_OFFSET_BITS=64 -pthread -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/fribidi -I/usr/include/atk-1.0 -I/usr/include/pixman-1 -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/x86_64-linux-gnu -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -D__WXGTK__ -I../../../samples/stc -DWXUSINGDLL -I../../../samples/stc/../../samples -pthread -Wall -Wundef -Wunused-parameter -Wno-ctor-dtor-privacy -Woverloaded-virtual -O2 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/uuid -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/gtk-3.0/unix-print -I/usr/include/gtk-3.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/x86_64-linux-gnu/dbus-1.0/include -I/usr/include/gio-unix-2.0 -I/usr/include/atk-1.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/x86_64-linux-gnu -fvisibility=hidden -fvisibility-inlines-hidden -fPIC -DPIC ../../../samples/stc/prefs.cpp
g++ -o stctest stctest_stctest.o stctest_edit.o stctest_prefs.o -L/home/dvertx/wxWidgets/debug/lib -Wl,-rpath,/home/dvertx/wxWidgets/debug/lib -pthread -lwx_gtk3u_stc-3.3 -lwx_gtk3u_core-3.3 -lwx_baseu-3.3 -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lgthread-2.0 -pthread -lglib-2.0 -lX11 -lXxf86vm -lSM -lxkbcommon -lgtk-3 -lgdk-3 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo-gobject -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lXtst -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lharfbuzz -lfontconfig -lfreetype -lpng -lz -ljpeg -ltiff -ljbig -pthread -Wl,--version-script,/home/dvertx/wxWidgets/debug/version-script -lz -lm -lpcre2-8 -lwxscintilla-3.3 -lwxlexilla-3.3 -lz -lm
The last line has ... -lwxscintilla-3.3 -lwxlexilla-3.3 -lz -lm as part of its parameter
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
Closed #23707.
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()
@imciner2 is correct, these libraries don't need to be installed because there is no need to link with them when using shared wx libraries which already include them.
Also, modifying the generated Makefile.in doesn't make sense anyhow, as any changes to it will be overwritten by the next update, so I'm closing this PR.
If you have a problem, please describe what is it, exactly, i.e. what are you trying to do and what doesn't work in a separate issue or on the mailing list. Thanks!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you are subscribed to this thread.![]()