[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Improving gambas 3.19.90 recipe for debian


Ok,

The sage continues...

Since I still had some small grammar changes to do (because of Leetian checks apparently).
I decided to test packaging 3.19.90 (at commit 4a36bbaa at that moment) with the recipe again.

So far, I only packaged stable versions (up to 3.19.6) on different debian distro versions and architectures.
But the recipe I was working at recently was for master (3.19.0) and during testing I only build on debian 12 amd64.
Next I went back on improving and back to packaging on debian 12.

But now that I had the impression that most if not all I could improve is done, it was time for some wider testing.

Today, I again successfully build on debian12 amd64 and I decided to give debian 11 a testride.
Well, the unexpected happened, it would not build. Note that all dependencies installed just fine and where taken from git.yml

From terminal I run: DEB_BUILD_OPTIONS=noautodbgsym dpkg-buildpackage -b -tc -us -uc >> ../build.log
In this build.log I find that (could not attach as it was too big) :

===  || || ALL COMPONENTS WILL BE COMPILED ||

according to config but almost at the end I see:

|| Unable to compile 'gb.mongodb'

Online on gambas git 3.19.90 it should compile just fine on debian bullseye (debian 11), so that should not be a problem, but what then is?

In terminal I also get some output that isn't in the build.log. These are all parts related to mongodb:
-------
c_mongocollection.c: In function ‘MongoCollection_Indexes_Add’:
c_mongocollection.c:462:2: warning: ‘mongoc_collection_create_index_with_opts’ is deprecated [-Wdeprecated-declarations]
  462 |  if (!mongoc_collection_create_index_with_opts(THIS->collection, keys, &index_opts, NULL, NULL, &error))
      |  ^~
In file included from /usr/include/libmongoc-1.0/mongoc/mongoc-client.h:26,
                 from /usr/include/libmongoc-1.0/mongoc/mongoc.h:29,
                 from /usr/include/libmongoc-1.0/mongoc.h:18,
                 from main.h:29,
                 from helper.h:29,
                 from c_mongocollection.c:28:
/usr/include/libmongoc-1.0/mongoc/mongoc-collection.h:137:1: note: declared here
  137 | mongoc_collection_create_index_with_opts (mongoc_collection_t *collection,
      | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
c_mongoclient.c: In function ‘MongoClient_new’:
c_mongoclient.c:44:17: warning: implicit declaration of function ‘mongoc_client_new_from_uri_with_error’; did you mean ‘mongoc_client_new_from_uri’? [-Wimplicit-function-declaration]
   44 |  THIS->client = mongoc_client_new_from_uri_with_error(THIS->uri, &error);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      |                 mongoc_client_new_from_uri
c_mongoclient.c:44:15: warning: assignment to ‘mongoc_client_t *’ {aka ‘struct _mongoc_client_t *’} from ‘int’ makes pointer from integer without a cast [-Wint-conversion]
   44 |  THIS->client = mongoc_client_new_from_uri_with_error(THIS->uri, &error);
      |               ^
 fakeroot debian/rules binary
libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'
libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'

...

libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'
libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'
libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'
/home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/bin/gbi3: symbol lookup error: /home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/lib/gambas3/gb.mongodb.so: undefined symbol: mongoc_client_new_from_uri_with_error
Main.module:5:17: error: Unknown identifier: MongoClient
/home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/bin/gbi3: symbol lookup error: /home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/lib/gambas3/gb.mongodb.so: undefined symbol: mongoc_client_new_from_uri_with_error

...

/home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/bin/gbi3: symbol lookup error: /home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/lib/gambas3/gb.mongodb.so: undefined symbol: mongoc_client_new_from_uri_with_error
libtool: warning: remember to run 'libtool --finish /usr/lib/gambas3'
/home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/bin/gbi3: symbol lookup error: /home/willy/gambas3/gambas-3.19.90.20241201.2141+git.4a36bbaa/debian/tmp/usr/lib/gambas3/gb.mongodb.so: undefined symbol: mongoc_client_new_from_uri_with_error
dh_install: warning: Cannot find (any matches for) "usr/share/gambas3/info/gb.mongodb.info" (tried in ., debian/tmp)

dh_install: warning: gambas3-gb-mongodb missing files: usr/share/gambas3/info/gb.mongodb.info
dh_install: warning: Cannot find (any matches for) "usr/share/gambas3/info/gb.mongodb.list" (tried in ., debian/tmp)

dh_install: warning: gambas3-gb-mongodb missing files: usr/share/gambas3/info/gb.mongodb.list
dh_install: error: missing files, aborting
make: *** [debian/rules:25: binary] Error 255
dpkg-buildpackage: error: fakeroot debian/rules binary subprocess returned exit status 2
-------

The complaining about 'missing files: usr/share/gambas3/info/gb.mongodb.list' is strange as .install file for mongodb has all it needs (at least on debian 12)
Because the build error occurred, the build creations in the debian recipe folder where not cleaned up . And I can confirm that no info directory seems to be getting build.  So what is happening here?

FilesMadeDuringBuild.png

Above (in background) you can see that usr/lib/gambas3 get's it's content (as in .install file in foreground), but usr/share/gambas3/info is non existing, or the building broke before it got there.

Anyone any clues?

gbWilly

Gambas3 for Debian

On Friday, November 29th, 2024 at 01:58, gbWilly <gbWilly@xxxxxxxxxxxxxx> wrote:
Today I have spent my day on further improved on the recipe for debian.

Getting rid of a bunch of lintian warnings and adapting to info given where needed/wanted. in control file
Getting rid of some lintian warnings in a few link files
Added all gb.db2 component install files and control info
Added qt6 as a possible gui dependency for gambas3-ide.
Added pngquant and translate-shell as suggestions to gambas3-ide
Modified rules and control file for debian11 for arm64/armhf to gcc-10 and g++-10 as there is no gcc-11/g++-11 on debian11
and probably some more fiddling done here and there.

Packaged with it, made a repository and it installed just fine

Gambas3.19.90-master.png

We are getting there...


Sent with Proton Mail secure email.



Follow-Ups:
Re: Improving gambas 3.19.90 recipe for debianBenoît Minisini <benoit.minisini@xxxxxxxxxxxxxxxx>