ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
Note dpkg -l trends to truncate the package-names, unless you trick it:
Code:
COLUMNS=2000 dpkg -l '*glib*' | cut -b1-40
Thanks very much for reply.
I followed your suggestions and "found" glib-2.0.pc in same path.
I must be missing something since I am still getting stuff like this
Code:
jim@jim-desktop:~$ sudo dpkg -p 'glib-2.0'
dpkg-query: package 'glib-2.0' is not available
At this point I feel it would be the best to "reinstall" - I had success doing so for "pkg-config".
( I am still not sure why I am having these issues - most likely "user error.)
I am still having trouble understanding the relations between "package name" and "installing " all these "x-dev" libraries.
I did add the /usr/lib/x86_64-linux-gnu/pkgconfig path to the "configure" options, but due to the above it still fails.
Typo makes sense, but still do not get how "configure" verifies "GLIB" without dpkg finding it.
I could post PART of the successful log if anybody likes to see it. Perhaps the answer in there somewhere.
Update
I have clean "configure" script run.
Now mowing to "make" and as expected having my first "make" error. Should I post it here as continuum or make a new thread?
It is related to "glib"
Here is the full error output from "make".
It does no show up until the --host option is specified in "configure".
That according to SOME comments should be enough to specify "crosscompiling" - which is my objective.
I just run into unexpected errors when I added "echo" to the wrapper, so it is getting harder to "trace" part of suspected error code.
But these are header files so it may not be that hard.
It looks it may have something to do with 64 bits system, but that is just my first guess.
Code:
jim@jim-desktop:/media/jim/DEV/BLUEZ/BLUEZ_RPI/bluez-5.50$ sudo make
make --no-print-directory all-am
CC lib/bluetooth.lo
CC lib/hci.lo
CC lib/sdp.lo
CCLD lib/libbluetooth.la
CC lib/uuid.lo
CCLD lib/libbluetooth-internal.la
arm-linux-gnueabihf-ar: `u' modifier ignored since `D' is the default (see `U')
CC gdbus/mainloop.lo
In file included from /usr/lib/x86_64-linux-gnu/glib-2.0/include/glibconfig.h:9:0,
from /usr/include/glib-2.0/glib/gtypes.h:32,
from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from gdbus/mainloop.c:28:
/usr/include/glib-2.0/glib/gtypes.h: In function '_GLIB_CHECKED_ADD_U64':
/usr/include/glib-2.0/glib/gmacros.h:232:53: error: size of array '_GStaticAssertCompileTimeAssertion_0' is negative
#define G_STATIC_ASSERT(expr) typedef char G_PASTE (_GStaticAssertCompileTimeAssertion_, __COUNTER__)[(expr) ? 1 : -1] G_GNUC_UNUSED
^
/usr/include/glib-2.0/glib/gmacros.h:229:47: note: in definition of macro 'G_PASTE_ARGS'
#define G_PASTE_ARGS(identifier1,identifier2) identifier1 ## identifier2
^
/usr/include/glib-2.0/glib/gmacros.h:232:44: note: in expansion of macro 'G_PASTE'
#define G_STATIC_ASSERT(expr) typedef char G_PASTE (_GStaticAssertCompileTimeAssertion_, __COUNTER__)[(expr) ? 1 : -1] G_GNUC_UNUSED
^
/usr/include/glib-2.0/glib/gtypes.h:422:3: note: in expansion of macro 'G_STATIC_ASSERT'
G_STATIC_ASSERT(sizeof (unsigned long long) == sizeof (guint64));
^
Makefile:5858: recipe for target 'gdbus/mainloop.lo' failed
make[1]: *** [gdbus/mainloop.lo] Error 1
Makefile:3278: recipe for target 'all' failed
make: *** [all] Error 2
jim@jim-desktop:/media/jim/DEV/BLUEZ/BLUEZ_RPI/bluez-5.50$
Most distros (certainly all the Debian-based ones) install a library in two parts. There is the library itself (which is needed by any running program that has been built against it) and the so-called "development package" consisting of compilation headers and documentation. This is only needed if you want to build an application which uses that library. The division goes back to the days of dial-up connections, when it saved mightily on download times. There was no need for people to download the headers if they weren't going to build anything locally.
Configure scripts are looking for headers, not library code. So when configure tells you that it can't find libfoo, it means it can't find the libfoo headers in /usr/include. The solution is to install the development package libfoo-dev.
Most distros (certainly all the Debian-based ones) install a library in two parts. There is the library itself (which is needed by any running program that has been built against it) and the so-called "development package" consisting of compilation headers and documentation. This is only needed if you want to build an application which uses that library. The division goes back to the days of dial-up connections, when it saved mightily on download times. There was no need for people to download the headers if they weren't going to build anything locally.
Configure scripts are looking for headers, not library code. So when configure tells you that it can't find libfoo, it means it can't find the libfoo headers in /usr/include. The solution is to install the development package libfoo-dev.
This is needed very useful info, thanks.
When I started analysing the ":configure" script I looked at this correct output
Only AFTER there is ANY problems with "Checking for GLIB" I get more info, but in general the error would be in style "...cannot find GLIB > 2.43" .
The bottom line - I have no idea "configure" is actually looking for "lib*" or "C" header or else.
I generally get more info after adding PKG_CONFIG_DEBUG_SPEW and after I get into habit of checking "config.log".
My approach may look silly, but I find it useful to try something and ONLY after it does not work as expected I "hit the books" or forums.
If I do it the other way around - I would never complete any project , and it is doubtful I would retain the "books knowledge" on something which works just fine.
I may not present myself as such , but "doing" computers since 197x I believe I do have reasonable base to build on.
Good reference article, however, not totally applicable to what I am doing.
I do not want to restart another pointless discussion about reposting stuff, not explaining (in details) what I am doing and not appreciating group suggestions.
I do not need to build / install bluez package for ARM architecture package on my X86.
Bluetooth is part of the kernel, no need to do that.
What I have been after ,since I started discussing the project here, is to build bluetooth "C" library for ARM architecture on my X86 system.
That is what "configure" does , or should.
Optioning "configure" to build such "C" library for native, X86, architecture is NON ISSUE.
The issue is to do same for ARM , host, architecture and until I have such "C" library build by "configure" process - it is going to be an UNSOLVED issue.
Despite some misgivings about this forum. I DO APPRECIATE ALL SUGGESTIONS.
IT IS VERY HELPFUL TO BE ABLE TO BOUNCE OFF IDEAS IN FORUM. and not necessarily just having "SOLUTIONS".
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.