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

hildon-application-manager: initial import & fix several compilation errors #202

Closed
MerlijnWajer opened this issue Nov 23, 2018 · 7 comments

Comments

@MerlijnWajer
Copy link
Member

MerlijnWajer commented Nov 23, 2018

https://github.com/maemo-leste/hildon-application-manager

I've already updated the debian/ files (although compat should perhaps become 9 instead of 5).

  • src/apt-worker.cc: needs some work: MetaIndexFile functions seems to be done from libapt-dev ; and there's a constant that's written to anyway (you'll see when you run make)
  • src/dbus.cc: currently relies on libhal to detect if there is enough battery for the update. I suggest we remove this for now. If not, let's make sure that we can query mce for the current battery status, so that we don't have to duplicate upower code to yet another project.
  • (optional) make the initial screen resize properly, right now the background pixmap just repeats, and it looks very bad on larger screens.
  • make debian/changelog entry

Then, it should build. Then we'll have to figure out how to structure out repositories (or just /etc/sources/) so that it does the right thing.

Here's a screenshot of me just commenting the above code to get something to run: https://wizzup.org/raspi-ham.png

@eloydegen
Copy link

I'm trying to build it, but I'm a bit stuck. I have first installed autoreconf to be able to run ./auogen.sh and after that ./configure, which exits in an error.

./configure: line 15931: syntax error near unexpected token `HAM_DEPS,'
./configure: line 15931: `PKG_CHECK_MODULES(HAM_DEPS, glib-2.0 gtk+-2.0 hildon-1 hildon-fm-2 libosso'

So, I tried installing libosso-dev which works but doesn't change the error. Installing libosso-test gives the error: Depends: outo: but it is not installable

@MerlijnWajer
Copy link
Member Author

Usual workflow would be to use dpkg-buildpackage -b -nc from the repository. That will tell you if you lack any dependencies, which you can just apt-get install.

@MerlijnWajer
Copy link
Member Author

E.g.:

root@devuan:~/test# git clone https://github.com/maemo-leste/hildon-application-manager
Cloning into 'hildon-application-manager'...
remote: Enumerating objects: 10462, done.
remote: Total 10462 (delta 0), reused 0 (delta 0), pack-reused 10462
Receiving objects: 100% (10462/10462), 2.88 MiB | 1.95 MiB/s, done.
Resolving deltas: 100% (8281/8281), done.
root@devuan:~/test# cd hildon-application-manager/
root@devuan:~/test/hildon-application-manager# dpkg-buildpackage -b -uc
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_MONETARY = "nl_NL@euro.ISO-8859-1",
        LC_MESSAGES = "en_US.UTF-8",
        LC_TIME = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
dpkg-buildpackage: info: source package hildon-application-manager
dpkg-buildpackage: info: source version 1:2.2.75-2
dpkg-buildpackage: info: source distribution unstable
dpkg-buildpackage: info: source changed by Pali Rohár <pali.rohar@gmail.com>
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_MONETARY = "nl_NL@euro.ISO-8859-1",
        LC_MESSAGES = "en_US.UTF-8",
        LC_TIME = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
dpkg-buildpackage: info: host architecture amd64
 dpkg-source --before-build hildon-application-manager
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_MONETARY = "nl_NL@euro.ISO-8859-1",
        LC_MESSAGES = "en_US.UTF-8",
        LC_TIME = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_MONETARY = "nl_NL@euro.ISO-8859-1",
        LC_MESSAGES = "en_US.UTF-8",
        LC_TIME = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
dpkg-checkbuilddeps: error: Unmet build dependencies: libapt-pkg-dev (>= 0.7.6) libhildonfm2-dev libconic0-dev libgnomevfs2-dev libalarm-dev libtime-dev libcurl4-openssl-dev
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
root@devuan:~/test/hildon-application-manager# apt-get install libapt-pkg-dev libhildonfm2-dev libconic0-dev libgnomevfs2-dev libalarm-dev libtime-dev libcurl4-openssl-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
  ethtool hdparm libpci3 libupower-glib1 libx86-1 pm-utils vbetool
Use 'apt autoremove' to remove them.
The following additional packages will be installed:
  libavahi-client-dev libavahi-common-dev libavahi-glib-dev libgmp-dev libgmpxx4ldbl
  libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28
  libhildon-thumbnail-dev libidn11-dev libp11-kit-dev libselinux1-dev libsepol1-dev
  libtasn1-6-dev libtasn1-doc libunbound2 libxml2-dev nettle-dev
Suggested packages:
  libcurl4-doc libcurl3-dbg libkrb5-dev libldap2-dev librtmp-dev libssh2-1-dev
  libssl1.0-dev | libssl-dev gmp-doc libgmp10-doc libmpfr-dev dns-root-data gnutls-doc
  gnutls-bin
The following NEW packages will be installed:
  libalarm-dev libapt-pkg-dev libavahi-client-dev libavahi-common-dev libavahi-glib-dev
  libconic0-dev libcurl4-openssl-dev libgmp-dev libgmpxx4ldbl libgnomevfs2-dev
  libgnutls-dane0 libgnutls-openssl27 libgnutls28-dev libgnutlsxx28
  libhildon-thumbnail-dev libhildonfm2-dev libidn11-dev libp11-kit-dev libselinux1-dev
  libsepol1-dev libtasn1-6-dev libtasn1-doc libtime-dev libunbound2 libxml2-dev
  nettle-dev
0 upgraded, 26 newly installed, 0 to remove and 1 not upgraded.
Need to get 7044 kB of archives.
After this operation, 22.3 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:22 http://maedevu.maemo.org/leste leste/main amd64 libalarm-dev amd64 1.1.16+1m7.4 [43.1 kB]
Get:23 http://maedevu.maemo.org/leste leste/main amd64 libconic0-dev amd64 0.24+1m7.3 [9604 B]
Get:24 http://maedevu.maemo.org/leste leste/main amd64 libhildon-thumbnail-dev amd64 3.1.2+1m7 [13.9 kB]
Get:25 http://maedevu.maemo.org/leste leste/main amd64 libhildonfm2-dev all 1:2.28.22+1m7.1 [27.8 kB]
Get:26 http://maedevu.maemo.org/leste leste/main amd64 libtime-dev amd64 0.0.41+1m7.5 [10.6 kB]
Get:1 http://pkgmaster.devuan.org/merged ascii/main amd64 libgnutls-openssl27 amd64 3.5.8-5+deb9u4 [185 kB]
Get:2 http://pkgmaster.devuan.org/merged ascii/main amd64 libapt-pkg-dev amd64 1.4.9 [235 kB]
Get:3 http://pkgmaster.devuan.org/merged ascii/main amd64 libavahi-common-dev amd64 0.6.32-2 [66.9 kB]
Get:4 http://pkgmaster.devuan.org/merged ascii/main amd64 libavahi-client-dev amd64 0.6.32-2 [60.8 kB]
Get:5 http://pkgmaster.devuan.org/merged ascii/main amd64 libavahi-glib-dev amd64 0.6.32-2 [38.3 kB]
Get:6 http://pkgmaster.devuan.org/merged ascii/main amd64 libcurl4-openssl-dev amd64 7.52.1-5+deb9u9 [374 kB]
Get:7 http://pkgmaster.devuan.org/merged ascii/main amd64 libgmpxx4ldbl amd64 2:6.1.2+dfsg-1 [22.2 kB]
Get:8 http://pkgmaster.devuan.org/merged ascii/main amd64 libgmp-dev amd64 2:6.1.2+dfsg-1 [631 kB]
Get:9 http://pkgmaster.devuan.org/merged ascii/main amd64 libgnutlsxx28 amd64 3.5.8-5+deb9u4 [13.1 kB]
Get:10 http://pkgmaster.devuan.org/merged ascii/main amd64 libunbound2 amd64 1.6.0-3+deb9u2 [345 kB]
Get:11 http://pkgmaster.devuan.org/merged ascii/main amd64 libgnutls-dane0 amd64 3.5.8-5+deb9u4 [184 kB]
Get:12 http://pkgmaster.devuan.org/merged ascii/main amd64 nettle-dev amd64 3.3-1+b2 [1041 kB]
Get:13 http://pkgmaster.devuan.org/merged ascii/main amd64 libtasn1-6-dev amd64 4.10-1.1+deb9u1 [103 kB]
Get:14 http://pkgmaster.devuan.org/merged ascii/main amd64 libp11-kit-dev amd64 0.23.3-2 [64.1 kB]
Get:15 http://pkgmaster.devuan.org/merged ascii/main amd64 libidn11-dev amd64 1.33-1 [594 kB]
Get:16 http://pkgmaster.devuan.org/merged ascii/main amd64 libgnutls28-dev amd64 3.5.8-5+deb9u4 [862 kB]
Get:17 http://pkgmaster.devuan.org/merged ascii/main amd64 libxml2-dev amd64 2.9.4+dfsg1-2.2+deb9u2 [812 kB]
Get:18 http://pkgmaster.devuan.org/merged ascii/main amd64 libsepol1-dev amd64 2.6-2 [309 kB]
Get:19 http://pkgmaster.devuan.org/merged ascii/main amd64 libselinux1-dev amd64 2.6-3+b3 [184 kB]
Get:20 http://pkgmaster.devuan.org/merged ascii/main amd64 libgnomevfs2-dev amd64 1:2.24.4-6.1+b2 [501 kB]
Get:21 http://pkgmaster.devuan.org/merged ascii/main amd64 libtasn1-doc all 4.10-1.1+deb9u1 [316 kB]
Fetched 7044 kB in 1s (5913 kB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LC_TIME = "en_US.UTF-8",
        LC_MONETARY = "nl_NL@euro.ISO-8859-1",
        LC_MESSAGES = "en_US.UTF-8",
        LANG = "en_US.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to a fallback locale ("en_US.UTF-8").
locale: Cannot set LC_ALL to default locale: No such file or directory
Selecting previously unselected package libgnutls-openssl27:amd64.
(Reading database ... 71947 files and directories currently installed.)
Preparing to unpack .../00-libgnutls-openssl27_3.5.8-5+deb9u4_amd64.deb ...
Unpacking libgnutls-openssl27:amd64 (3.5.8-5+deb9u4) ...
Selecting previously unselected package libalarm-dev.
Preparing to unpack .../01-libalarm-dev_1.1.16+1m7.4_amd64.deb ...
Unpacking libalarm-dev (1.1.16+1m7.4) ...
Selecting previously unselected package libapt-pkg-dev:amd64.
Preparing to unpack .../02-libapt-pkg-dev_1.4.9_amd64.deb ...
Unpacking libapt-pkg-dev:amd64 (1.4.9) ...
Selecting previously unselected package libavahi-common-dev:amd64.
Preparing to unpack .../03-libavahi-common-dev_0.6.32-2_amd64.deb ...
Unpacking libavahi-common-dev:amd64 (0.6.32-2) ...
Selecting previously unselected package libavahi-client-dev:amd64.
Preparing to unpack .../04-libavahi-client-dev_0.6.32-2_amd64.deb ...
Unpacking libavahi-client-dev:amd64 (0.6.32-2) ...
Selecting previously unselected package libavahi-glib-dev:amd64.
Preparing to unpack .../05-libavahi-glib-dev_0.6.32-2_amd64.deb ...
Unpacking libavahi-glib-dev:amd64 (0.6.32-2) ...
Selecting previously unselected package libconic0-dev.
Preparing to unpack .../06-libconic0-dev_0.24+1m7.3_amd64.deb ...
Unpacking libconic0-dev (0.24+1m7.3) ...
Selecting previously unselected package libcurl4-openssl-dev:amd64.
Preparing to unpack .../07-libcurl4-openssl-dev_7.52.1-5+deb9u9_amd64.deb ...
Unpacking libcurl4-openssl-dev:amd64 (7.52.1-5+deb9u9) ...
Selecting previously unselected package libgmpxx4ldbl:amd64.
Preparing to unpack .../08-libgmpxx4ldbl_2%3a6.1.2+dfsg-1_amd64.deb ...
Unpacking libgmpxx4ldbl:amd64 (2:6.1.2+dfsg-1) ...
Selecting previously unselected package libgmp-dev:amd64.
Preparing to unpack .../09-libgmp-dev_2%3a6.1.2+dfsg-1_amd64.deb ...
Unpacking libgmp-dev:amd64 (2:6.1.2+dfsg-1) ...
Selecting previously unselected package libgnutlsxx28:amd64.
Preparing to unpack .../10-libgnutlsxx28_3.5.8-5+deb9u4_amd64.deb ...
Unpacking libgnutlsxx28:amd64 (3.5.8-5+deb9u4) ...
Selecting previously unselected package libunbound2:amd64.
Preparing to unpack .../11-libunbound2_1.6.0-3+deb9u2_amd64.deb ...
Unpacking libunbound2:amd64 (1.6.0-3+deb9u2) ...
Selecting previously unselected package libgnutls-dane0:amd64.
Preparing to unpack .../12-libgnutls-dane0_3.5.8-5+deb9u4_amd64.deb ...
Unpacking libgnutls-dane0:amd64 (3.5.8-5+deb9u4) ...
Selecting previously unselected package nettle-dev.
Preparing to unpack .../13-nettle-dev_3.3-1+b2_amd64.deb ...
Unpacking nettle-dev (3.3-1+b2) ...
Selecting previously unselected package libtasn1-6-dev:amd64.
Preparing to unpack .../14-libtasn1-6-dev_4.10-1.1+deb9u1_amd64.deb ...
Unpacking libtasn1-6-dev:amd64 (4.10-1.1+deb9u1) ...
Selecting previously unselected package libp11-kit-dev:amd64.
Preparing to unpack .../15-libp11-kit-dev_0.23.3-2_amd64.deb ...
Unpacking libp11-kit-dev:amd64 (0.23.3-2) ...
Selecting previously unselected package libidn11-dev.
Preparing to unpack .../16-libidn11-dev_1.33-1_amd64.deb ...
Unpacking libidn11-dev (1.33-1) ...
Selecting previously unselected package libgnutls28-dev:amd64.
Preparing to unpack .../17-libgnutls28-dev_3.5.8-5+deb9u4_amd64.deb ...
Unpacking libgnutls28-dev:amd64 (3.5.8-5+deb9u4) ...
Selecting previously unselected package libxml2-dev:amd64.
Preparing to unpack .../18-libxml2-dev_2.9.4+dfsg1-2.2+deb9u2_amd64.deb ...
Unpacking libxml2-dev:amd64 (2.9.4+dfsg1-2.2+deb9u2) ...
Selecting previously unselected package libsepol1-dev:amd64.
Preparing to unpack .../19-libsepol1-dev_2.6-2_amd64.deb ...
Unpacking libsepol1-dev:amd64 (2.6-2) ...
Selecting previously unselected package libselinux1-dev:amd64.
Preparing to unpack .../20-libselinux1-dev_2.6-3+b3_amd64.deb ...
Unpacking libselinux1-dev:amd64 (2.6-3+b3) ...
Selecting previously unselected package libgnomevfs2-dev:amd64.
Preparing to unpack .../21-libgnomevfs2-dev_1%3a2.24.4-6.1+b2_amd64.deb ...
Unpacking libgnomevfs2-dev:amd64 (1:2.24.4-6.1+b2) ...
Selecting previously unselected package libhildon-thumbnail-dev.
Preparing to unpack .../22-libhildon-thumbnail-dev_3.1.2+1m7_amd64.deb ...
Unpacking libhildon-thumbnail-dev (3.1.2+1m7) ...
Selecting previously unselected package libhildonfm2-dev.
Preparing to unpack .../23-libhildonfm2-dev_1%3a2.28.22+1m7.1_all.deb ...
Unpacking libhildonfm2-dev (1:2.28.22+1m7.1) ...
Selecting previously unselected package libtime-dev.
Preparing to unpack .../24-libtime-dev_0.0.41+1m7.5_amd64.deb ...
Unpacking libtime-dev (0.0.41+1m7.5) ...
Selecting previously unselected package libtasn1-doc.
Preparing to unpack .../25-libtasn1-doc_4.10-1.1+deb9u1_all.deb ...
Unpacking libtasn1-doc (4.10-1.1+deb9u1) ...
Setting up libsepol1-dev:amd64 (2.6-2) ...
Setting up libunbound2:amd64 (1.6.0-3+deb9u2) ...
Setting up libapt-pkg-dev:amd64 (1.4.9) ...
Setting up libalarm-dev (1.1.16+1m7.4) ...
Setting up libhildon-thumbnail-dev (3.1.2+1m7) ...
Setting up libavahi-common-dev:amd64 (0.6.32-2) ...
Setting up libavahi-client-dev:amd64 (0.6.32-2) ...
Setting up libavahi-glib-dev:amd64 (0.6.32-2) ...
Setting up libp11-kit-dev:amd64 (0.23.3-2) ...
Setting up libtasn1-6-dev:amd64 (4.10-1.1+deb9u1) ...
Setting up libxml2-dev:amd64 (2.9.4+dfsg1-2.2+deb9u2) ...
Setting up libtasn1-doc (4.10-1.1+deb9u1) ...
Setting up libgnutlsxx28:amd64 (3.5.8-5+deb9u4) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...
Setting up libgnutls-dane0:amd64 (3.5.8-5+deb9u4) ...
Setting up libgnutls-openssl27:amd64 (3.5.8-5+deb9u4) ...
Setting up libconic0-dev (0.24+1m7.3) ...
Processing triggers for man-db (2.7.6.1-2) ...
Setting up libtime-dev (0.0.41+1m7.5) ...
Setting up libgmpxx4ldbl:amd64 (2:6.1.2+dfsg-1) ...
Setting up libselinux1-dev:amd64 (2.6-3+b3) ...
Setting up libcurl4-openssl-dev:amd64 (7.52.1-5+deb9u9) ...
Setting up libhildonfm2-dev (1:2.28.22+1m7.1) ...
Setting up libidn11-dev (1.33-1) ...
Setting up libgmp-dev:amd64 (2:6.1.2+dfsg-1) ...
Setting up nettle-dev (3.3-1+b2) ...
Setting up libgnutls28-dev:amd64 (3.5.8-5+deb9u4) ...
Setting up libgnomevfs2-dev:amd64 (1:2.24.4-6.1+b2) ...
Processing triggers for libc-bin (2.24-11+deb9u4) ...

And then re-run dpkg-buildpackage -b -nc. It will probably fail somewhere (per my above comments), but those fixes should be relatively simple. That will get you to the point where I was in this PR.

@MerlijnWajer
Copy link
Member Author

Oh, and once/if you've done initial dpkg-buildpackage -b -uc you can probably also just run make at least while doing initial development. If you don't want dpkg-buildpackage to clean when it starts, add -nc. (I use this a lot in development)

@eloydegen
Copy link

So the MetaIndexFile error is probably about this according to the GCC docs:

Troubleshooting

If you get linker errors about undefined references to symbols that involve types in the std::__cxx11 namespace or the tag [abi:cxx11] then it probably indicates that you are trying to link together object files that were compiled with different values for the _GLIBCXX_USE_CXX11_ABI macro. This commonly happens when linking to a third-party library that was compiled with an older version of GCC. If the third-party library cannot be rebuilt with the new ABI then you will need to recompile your code with the old ABI.

So, it seems I have to rebuilt libapt-pkg with a newer GCC?

@MerlijnWajer
Copy link
Member Author

@MerlijnWajer
Copy link
Member Author

So AFAIK we have some version of this in the repo now, so any 'initial' import is done.

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

No branches or pull requests

2 participants