Compiling Google Gadgets on OS12

Has anyone managed to compile GG from source, on OS 12?

This is an allegedly dead project but I would still like to compile and run it.

I’m referring to the source code from here:

google-gadgets-for-linux - An open-source implementation of Google Gadgets platform for Linux. - Google Project Hosting

When making, having loaded all dependencies I get an error in …/third_party/unzip/unzip.c with the libunzip library.

In particular:

 gcc -DHAVE_CONFIG_H -I. -I../../../third_party/unzip -I../.. -I/usr/include -D__STDC_CONSTANT_MACROS -DNDEBUG -DGGL_MODULE_DIR=\"/usr/lib64/google-gadgets/modules\" -DGGL_INCLUDE_DIR=\"/usr/include/google-gadgets\" -DGGL_SYSDEPS_INCLUDE_DIR=\"/usr/lib64/google-gadgets/include\" -DGGL_LIBEXEC_DIR=\"/usr/lib64/google-gadgets\" -DGGL_RESOURCE_DIR=\"/usr/share/google-gadgets\" -DGGL_HOST_LINUX=1 -DGGL_LITTLE_ENDIAN -DHAVE_PTHREAD=1 -DHAVE_X11=1 -DHAVE_DBUS_LIBRARY -DHAVE_DBUS_WATCH_GET_UNIX_FD -DHAVE_RSVG_LIBRARY -DHAVE_NETWORK_MANAGER -DHAVE_NEW_NETWORK_MANAGER_API -DHAVE_MKDTEMP -DHAVE_MMAP "-DGGL_DIST_INFO=\"linux-x86_64 (openSUSE 12.2 (x86_64)) (-)\"" -DGGL_DEFAULT_GST_AUDIO_SINK=\"autoaudiosink\" -DGGL_DEFAULT_BROWSER_PLUGINS_DIR=\"/usr/lib64/browser-plugins\" -DGGL_ENABLE_XDGMIME -DGGL_GTK_HTML_SCRIPT_ENGINE=\"xulrunner\" -DGGL_GTK_XML_HTTP_REQUEST=\"curl\" -DGGL_QT_SCRIPT_ENGINE=\"qt\" -O2 -Wall -fstack-protector -Werror -MT libunzip_la-unzip.lo -MD -MP -MF .deps/libunzip_la-unzip.Tpo -c ../../../third_party/unzip/unzip.c  -fPIC -DPIC -o .libs/libunzip_la-unzip.o
../../../third_party/unzip/zip.c: In function ‘zipOpenNewFileInZip3’:
../../../third_party/unzip/zip.c:884:28: error: assignment from incompatible pointer type -Werror]
cc1: all warnings being treated as errors
../../../third_party/unzip/unzip.c: In function ‘unzOpenCurrentFile3’:
../../../third_party/unzip/unzip.c:1176:24: error: assignment from incompatible pointer type -Werror]
make[3]: *** [libunzip_la-zip.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
make[3]: *** [libunzip_la-unzip.lo] Error 1
make[3]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build/third_party/unzip'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build/third_party'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build'
make: *** [all] Error 2

Hi
Rebuild this src rpm?
ftp://ftp.icm.edu.pl/vol/rzm2/linux-opensuse/source/distribution/11.4/repo/oss/suse/src/google-gadgets-0.11.2-7.4.src.rpm

They disable the error in the configure…

Thanks. I’ve tried this source and it still doesn’t compile I’m afraid.
It’s not an error in configure but in the C/source compilation:

../../../third_party/unzip/zip.c:884:28: error: assignment from incompatible pointer type -Werror]
cc1: all warnings being treated as errors
make[3]: *** [libunzip_la-zip.lo] Error 1

Same error as before.

On Mon, 21 Jan 2013 16:46:01 +0000, bananaosx wrote:

> cc1: all warnings being treated as errors

That’s not necessarily a code problem, that’s a config problem in the
makefile. Try disabling the -Werror switch (I think that’s the one
that’s making all warnings be treated as errors).

Jim

Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

Thanks, I’ve removed the

-Werror

switch from the

DEFAULT_COMPILE_FLAGS

in the Makefile. I still get the error during compilation.
Is there another switch I should pass to

make

?

On Mon, 21 Jan 2013 18:06:01 +0000, bananaosx wrote:

> I still get the error during compilation.

Can you show the specific output you now get? That switch should have
changed the output IIRC, so you should have gotten a different error (or
at least different output).

Incompatible pointers are not supposed to be fatal - because a pointer is
just a reference to a memory address, and the data types may not be
exactly what is declared, but usually it doesn’t cause a problem.

Jim

Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

This is the error I’m getting now:

gcc -DHAVE_CONFIG_H -I. -I../../../third_party/unzip -I../.. -I/usr/include -D__STDC_CONSTANT_MACROS -DNDEBUG -DGGL_MODULE_DIR=\"/usr/lib64/google-gadgets/modules\" -DGGL_INCLUDE_DIR=\"/usr/include/google-gadgets\" -DGGL_SYSDEPS_INCLUDE_DIR=\"/usr/lib64/google-gadgets/include\" -DGGL_LIBEXEC_DIR=\"/usr/lib64/google-gadgets\" -DGGL_RESOURCE_DIR=\"/usr/share/google-gadgets\" -DGGL_HOST_LINUX=1 -DGGL_LITTLE_ENDIAN -DHAVE_PTHREAD=1 -DHAVE_X11=1 -DHAVE_DBUS_LIBRARY -DHAVE_DBUS_WATCH_GET_UNIX_FD -DHAVE_RSVG_LIBRARY -DHAVE_NETWORK_MANAGER -DHAVE_NEW_NETWORK_MANAGER_API -DHAVE_MKDTEMP -DHAVE_MMAP "-DGGL_DIST_INFO=\"linux-x86_64 (openSUSE 12.2 (x86_64)) (-)\"" -DGGL_DEFAULT_GST_AUDIO_SINK=\"autoaudiosink\" -DGGL_DEFAULT_BROWSER_PLUGINS_DIR=\"/usr/lib64/browser-plugins\" -DGGL_ENABLE_XDGMIME -DGGL_GTK_HTML_SCRIPT_ENGINE=\"xulrunner\" -DGGL_GTK_XML_HTTP_REQUEST=\"curl\" -DGGL_QT_SCRIPT_ENGINE=\"qt\" -O2 -Wall -fstack-protector -Werror -MT libunzip_la-zip.lo -MD -MP -MF .deps/libunzip_la-zip.Tpo -c ../../../third_party/unzip/zip.c  -fPIC -DPIC -o .libs/libunzip_la-zip.o
../../../third_party/unzip/unzip.c: In function ‘unzOpenCurrentFile3’:
../../../third_party/unzip/unzip.c:1176:24: error: assignment from incompatible pointer type -Werror]
../../../third_party/unzip/zip.c: In function ‘zipOpenNewFileInZip3’:
../../../third_party/unzip/zip.c:884:28: error: assignment from incompatible pointer type -Werror]
cc1: all warnings being treated as errors
make[3]: *** [libunzip_la-unzip.lo] Error 1
make[3]: *** Waiting for unfinished jobs....
cc1: all warnings being treated as errors
make[3]: *** [libunzip_la-zip.lo] Error 1
make[3]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build/third_party/unzip'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build/third_party'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/jh/google-gadgets-for-linux-0.11.2/build'
make: *** [all] Error 2

Same pointer error I believe.

On Mon 21 Jan 2013 06:31:19 PM CST, Jim Henderson wrote:

On Mon, 21 Jan 2013 18:06:01 +0000, bananaosx wrote:

> I still get the error during compilation.

Can you show the specific output you now get? That switch should have
changed the output IIRC, so you should have gotten a different error
(or at least different output).

Incompatible pointers are not supposed to be fatal - because a pointer
is just a reference to a memory address, and the data types may not be
exactly what is declared, but usually it doesn’t cause a problem.

Jim

Hi
Add the --disable-werror to the configure flags…


../configure --disable-werror --disable-static

Then you will need to work on gcc4.7 porting and glib.h errors…
https://launchpad.net/~createsc/+archive/3beol/+sourcepub/2819550/+listing-archive-extra
Grab the google-gadgets_0.11.2-6~quantal1202~3beol.debian.tar.xz
file…


Cheers Malcolm °¿° (Linux Counter #276890)
openSUSE 12.2 (x86_64) Kernel 3.4.11-2.16-desktop
up 4 days 21:50, 3 users, load average: 1.16, 0.33, 0.25
CPU Intel® i5 CPU M520@2.40GHz | GPU Intel® Ironlake Mobile

On Mon, 21 Jan 2013 18:46:01 +0000, bananaosx wrote:

> Same pointer error I believe.

Yep, and same cause - the warning is being treated as an error. Malcolm’s
solution should solve it.

Jim


Jim Henderson
openSUSE Forums Administrator
Forum Use Terms & Conditions at http://tinyurl.com/openSUSE-T-C

Right thanks.

As suggested, using this source:

https://launchpad.net/~createsc/+archive/3beol/+files/google-gadgets_0.11.2-6~quantal1202~3beol.debian.tar.xz

from

https://launchpad.net/~createsc/+archive/3beol/+sourcepub/2819550/+listing-archive-extra

I patched three files prior to Configuring. These were gcc-4.7.diff, glib_includes.diff and nm09.patch in the source dirs using the /debian/patch dir.

Had to run Configure with these arguments:

$ …/configure --prefix=/usr --libdir=/usr/lib64 --with-browser-plugins-dir=/usr/lib64/browser-plugins --disable-werror --disable-static

So it’s working on OS12 now. Thanks a bunch.

But one further thing, there are only a handful of weak/poor gadgets included. Is this because the project is no longer active? What I’m trying to ask is, did Google originally distribute all gadgets or am I supposed to get/copy add-ons from elsewhere?

Somewhat boring.

http://img9.imageshack.us/img9/8720/screenshot220113002546.png