Thanks for the advice. I already use the L switch for linking to all the IUP *.a files, i.e. -- *-L./lib*. That works fine for all files except for libiup_scintilla.a. For that you are telling me I need to link to specific files in GTK3. It seems to me GTK3 isn't meant to be called directly by programs, only by the OS (hence the reason it isn't in the $PATH), so I temporarily add the GTK3 directory to my path and then linked to them ... except that doesn't work. The (Debian) system says there is no libgtk-3, which when I go and look for it, there is only libgtk-3.so.0 which (to me) looks like a symbolic link, so I have to change *-lgtk-3* to *-l:libgtk-3.so.0* and so on and so forth for all 12 files the documentation listed: *-l:libgdk-3.so.0 -l:libgdk_pixbuf-2.0.so.0 -l:libpangocairo-1.0.so.0 -l:libpango-1.0.so.0 -l:libcairo.so.2 -l:libgobject-2.0.so.0 -l:libgmodule-2.0.so.0 -l:libglib-2.0.so.0 -l:libXext.so.6 -l:libX11.so.6 -l:libm.so.6*. Now it links to them but unfortunately, this leads to a new problem, namely:

*ld: ./lib/libiup_scintilla.a(ScintillaGTKAccessible.o): undefined reference to symbol 'atk_object_notify_state_change'** **ld: /lib/x86_64-linux-gnu/libatk-1.0.so.0: error adding symbols: DSO missing from command line*

Now what do I do?

PS -- There is a typo in the doc: *gdk-3* should have been *-lgdk-3*
PPS -- Look at that huge, gigantic command line! This is far, far easier to do in Windows than it is in Linux.

On 7/17/23 05:56, Antonio Scuri wrote:
-L/my_path/iup/lib/Linux

Em seg., 17 de jul. de 2023 às 09:04, Anonymous <anonuser8313...@gmail.com> escreveu:

    On 7/17/23 04:49, Antonio Scuri wrote:There is no libscintilla.a
    so I am stuck with libscintilla.so
     There is no sense in using GTK 2 anymore for recent systems.
    Focus on GTK 3.

    Yes sir, I understand. I will focus only on GTK3 from now on.

    The problem I'm see is, none of the files mentioned in the IUP
    documentation for static linking are visible, even with GTK3
    installed. How can I make the files visible from the current
    working directory my source code is in?

    Em sáb., 15 de jul. de 2023 às 17:52, Anonymous
    <anonuser8313...@gmail.com> escreveu:

        Note, the documentation says to use -lpangox-2.0, but their
        is no libpangox-2.0.so <http://libpangox-2.0.so> file that
        exists in the GTK2 or GTK3 directory. Was it supposed to say
        -lpangoxft-1.0 or -lpangomm-1.4.so <http://lpangomm-1.4.so>
        or -lpangocairo-1.0.so.0?

        On 7/15/23 13:06, Anonymous wrote:
        My problem is why won't GTK show up in my path, even though
        the system works with GTK apps? Is that normal? I could copy
        all the files needed to a directory for static linking as
        https://www.tecgraf.puc-rio.br/iup/ says to do,

        "For GTK, IUP uses the GTK, GDK, Pango, Cairo if GTK 3, and
        GLib. To *statically* link an application with IUP, use the
        following options in the linker call (in the same order) ...

        *-lgtk-x11-2.0 -lgdk-x11-2.0*  -lgdk_pixbuf-2.0*-lpangox-1.0*  
-lpango-1.0 -lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lXext -lX11 -lm  (for GTK 2)
        or
        *-lgtk-3 gdk-3*  -lgdk_pixbuf-2.0*-lpangocairo-1.0*  -lpango-1.0*-lcairo*    
-lgobject-2.0 -lgmodule-2.0 -lglib-2.0 -lXext -lX11 -lm  (for GTK 3)"

        ... but do I really have to copy files from root to a place
        where it can be found by my make file? That doesn't make
        sense but if that is how things are done in Linux, I will
        just have to do it. I just hope those files are easy to find.

        On 7/15/23 12:31, Antonio Scuri wrote:
         Please take a look at the IUP documentation. You will find
        more info there:

        https://www.tecgraf.puc-rio.br/iup/

          In Guide / Building Applications

        Best,
        Scuri


        Em sáb., 15 de jul. de 2023 às 12:54, Anonymous
        <anonuser8313...@gmail.com> escreveu:

            One last follow-up...

            If I go to
            https://packages.debian.org/bullseye/amd64/libgtk2.0-0/filelist,
            it shows me where the GTK files are located for Debian
            based systems. Why isn't this in the PATH? Why do I
            have GTK programs that work if it isn't in the PATH?
            Does that mean I have to link to the GTK library using
            a hard-coded path? That's a problem since that means
            that since Debian doesn't follow the standard Linux
            filesystem hierarchy standard (which says GTK should be
            installed in /usr/lib/ and not
            /usr/lib/x86_64-linux-gnu/) if I hard-code the path
            name in the linker for GTK, it will only work for
            Debian systems.

            For being so user friendly, MX Linux sure is developer
            unfriendly.

            On 7/15/23 08:29, Anonymous wrote:

            That's a typo. It actually says it has both installed
            but I can't find either one on my computer.

            On 7/15/23 08:23, Anonymous wrote:

            Ola,

            Much thanks Antonio! I went from 13381 errors to two,
            but these two errors look ominous...

            ld: ./lib/libiup.a(iupgtk_toggle.o): undefined
            reference to symbol 'gtk_toggle_button_new'
            ld: /lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0: error
            adding symbols: DSO missing from command l
            ine

            Is that one error or two? My system does not have a
            file named libgtk-x11-2.0.0, so I tried...

            |dpkg -l libgtk* | grep -e '^i' | grep -e
            'libgtk-*[0-9]' and it returned... |ii  libgtk-3-0:amd64           
3.24.24-4+deb11u3 amd64        GTK graphical user interface library
            ii  libgtk-3-common            3.24.24-4+deb11u3 all          
common files for the GTK graphical user interface library
            ii  libgtk2.0-0:amd64          2.24.33-2         amd64        GTK 
graphical user interface library - old version
            ii  libgtk2.0-common           2.24.33-2         all          
common files for the GTK graphical user interface library
            ii  libgtk3-perl               0.038-1           all          Perl 
bindings for the GTK+ graphical user interface library
            ||

            Oops! It looks like IUP will only work with GTK2 and
            that says I have GTK3, right? Is there any workaround
            for that or am I screwed?

            Signed,
            Andrew

            On 7/15/23 05:50, Antonio Scuri wrote:
             The scintilla library itself is missing.
            IupScintilla is IUP using Scintilla.



            Em sáb., 15 de jul. de 2023 às 09:43, Anonymous
            <anonuser8313...@gmail.com> escreveu:

                Ola,

                I'm still new to Linux so forgive me if I ask
                what might be stupid
                questions. I cannot link to scintilla using IUP.
                I get a slew of error
                like this:

                ld: ./lib/libiup_scintilla.a(ScintillaGTK.o): in
                function
                `Scintilla::ScintillaGTK::ModifyScrollBars(long,
                long)':
                ScintillaGTK.cxx:(.text+0x70d): undefined
                reference to
                `gtk_adjustment_get_upper'
                ld: ScintillaGTK.cxx:(.text+0x737): undefined
                reference to
                `gtk_adjustment_get_page_size'
                ld: ScintillaGTK.cxx:(.text+0x77b): undefined
                reference to
                `gtk_adjustment_set_upper'
                ld: ScintillaGTK.cxx:(.text+0x790): undefined
                reference to
                `gtk_adjustment_set_page_size'
                ld: ScintillaGTK.cxx:(.text+0x7a6): undefined
                reference to
                `gtk_adjustment_set_page_increment'
                ld: ScintillaGTK.cxx:(.text+0x7da): undefined
                reference to
                `gtk_adjustment_get_upper'
                ld: ScintillaGTK.cxx:(.text+0x81a): undefined
                reference to
                `gtk_adjustment_get_page_size'
                ld: ScintillaGTK.cxx:(.text+0x855): undefined
                reference to
                `gtk_adjustment_set_upper'
                ld: ScintillaGTK.cxx:(.text+0x86a): undefined
                reference to
                `gtk_adjustment_set_page_size'
                ld: ScintillaGTK.cxx:(.text+0x87f): undefined
                reference to
                `gtk_adjustment_set_page_increment'

                And etc, etc, etc for 13381 lines.

                I presume that means a dependency is missing but
                what dependency would
                that be? Or it might be something else? Does
                anyone know?

                Signed,
                Andrew

                ╔═════════════════════╗
                ║ Environment         ║
                ╟─────────────────────╢
                ║ IUP           v3.30 ║
                ║ IM            v3.12 ║
                ║ CD          v5.11.1 ║
                ║ Mx Linux      v21.3 ║
                ║ KDE_x64  Wildflower ║
                ╚═════════════════════╝



                _______________________________________________
                Iup-users mailing list
                Iup-users@lists.sourceforge.net
                https://lists.sourceforge.net/lists/listinfo/iup-users



            _______________________________________________
            Iup-users mailing list
            Iup-users@lists.sourceforge.net
            https://lists.sourceforge.net/lists/listinfo/iup-users
            _______________________________________________
            Iup-users mailing list
            Iup-users@lists.sourceforge.net
            https://lists.sourceforge.net/lists/listinfo/iup-users



        _______________________________________________
        Iup-users mailing list
        Iup-users@lists.sourceforge.net
        https://lists.sourceforge.net/lists/listinfo/iup-users
_______________________________________________
Iup-users mailing list
Iup-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/iup-users

Reply via email to