Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI porta un importante aggiornamento alla sua linea di gimbal camera tascabili con Osmo Pocket 4: sensore CMOS da 1 pollice rinnovato, gamma dinamica a 14 stop, profilo colore D-Log a 10 bit, slow motion a 4K/240fps e 107 GB di archiviazione integrata. Un prodotto pensato per i creator avanzati, ma che convince anche per l'uso quotidiano
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-05-2011, 17:29   #1
Emaborsa
Senior Member
 
L'Avatar di Emaborsa
 
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
[C++] NDK Android + sqlite3

Ammetto che sto facendo un progetto universitario, ma in rete non trovo soluzioni al mio problema. Abbiamo dovuto scrivere le classi in C++ per poi creare l'applicazione in Android con NDK e poi per MeeGo in QT. QT non ci sono stati problemi, in Android:
Ho scritto una mia classe Database implementando sqlite. In QT ho semplicemente fatto l'include del sqlite3.h e nel makefile del probetto ho incluso la libreria libsqlite3.a. Non riesco a farlo nel build della libreria con NDK. Mi da sempre l'errore "undefined reference" e non so come fare. Molto probabilmente è solo una stringa in un file .mk, ma non reisco a scoprire quale.
Qualcuno mi sa dare una mano?
__________________
Vendo...nulla.
Cerco...la felicità
.
Emaborsa è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 07:45   #2
Mouzer
Junior Member
 
Iscritto dal: May 2011
Messaggi: 1
Ciao,

sarebbe utile sapere a quale libreria appartiene il nome che segue la segnalazione dell'errore ("undefined reference to 'xxxx').
Che versione dell'ndk hai installata? prova ndk-build v=1 per avere maggiori dettagli sul processo di build.
Mouzer è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 13:11   #3
Emaborsa
Senior Member
 
L'Avatar di Emaborsa
 
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
Quote:
Originariamente inviato da Mouzer Guarda i messaggi
Ciao,

sarebbe utile sapere a quale libreria appartiene il nome che segue la segnalazione dell'errore ("undefined reference to 'xxxx').
Che versione dell'ndk hai installata? prova ndk-build v=1 per avere maggiori dettagli sul processo di build.
Allora, io linkavo la libreria libsqlite3.a di linux, dato che in QT facendo così funziona. Poi mi hanno fatto notare che non potrà mai funzionare (...ripensandoci è anche ovvio).
Ho risolto scaricando file c e h dal www.sqlite.org all'ultima versione.
__________________
Vendo...nulla.
Cerco...la felicità
.
Emaborsa è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 14:27   #4
dierre
Senior Member
 
L'Avatar di dierre
 
Iscritto dal: Sep 2004
Città: Interamnia Urbs
Messaggi: 2126
Quote:
Originariamente inviato da Emaborsa Guarda i messaggi
Allora, io linkavo la libreria libsqlite3.a di linux, dato che in QT facendo così funziona. Poi mi hanno fatto notare che non potrà mai funzionare (...ripensandoci è anche ovvio).
Ho risolto scaricando file c e h dal www.sqlite.org all'ultima versione.
In che senso? Perché devi ricompilare il sorgente per la NDK giusto? Invece il .a era per il kernel linux della macchina dal quale programmi? Se non è questo il motivo, mi sfugge.
__________________
Un wormhole (buco di tarlo, in italiano), detto anche Ponte di Einstein-Rosen, è una ipotetica caratteristica topologica dello spaziotempo che è essenzialmente una "scorciatoia" da un punto dell'universo a un altro, che permetterebbe di viaggiare tra di essi più velocemente di quanto impiegherebbe la luce a percorrere la distanza attraverso lo spazio normale.
Go to a Wormhole
dierre è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 14:35   #5
Emaborsa
Senior Member
 
L'Avatar di Emaborsa
 
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
Quote:
Originariamente inviato da dierre Guarda i messaggi
In che senso? Perché devi ricompilare il sorgente per la NDK giusto? Invece il .a era per il kernel linux della macchina dal quale programmi? Se non è questo il motivo, mi sfugge.
Il ho scritto delle classi in C++. Una di queste usava la libreria di linux (la libsqlite3.a) Finchè il codice veniva usato per linux, usanco gcc ...... andava perfetto.
Facendo per il build con NDK, non posso prendere la libreria in question, perchè questa in automatico prende la libreria pthread di linux, che non è compatibile. L'errore era questo. Allor aho preso c e h sal sito, questi non vanno a prendere la libreria di linux, perciò il build funziona.
__________________
Vendo...nulla.
Cerco...la felicità
.
Emaborsa è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 14:38   #6
dierre
Senior Member
 
L'Avatar di dierre
 
Iscritto dal: Sep 2004
Città: Interamnia Urbs
Messaggi: 2126
Quote:
Originariamente inviato da Emaborsa Guarda i messaggi
Il ho scritto delle classi in C++. Una di queste usava la libreria di linux (la libsqlite3.a) Finchè il codice veniva usato per linux, usanco gcc ...... andava perfetto.
Facendo per il build con NDK, non posso prendere la libreria in question, perchè questa in automatico prende la libreria pthread di linux, che non è compatibile. L'errore era questo. Allor aho preso c e h sal sito, questi non vanno a prendere la libreria di linux, perciò il build funziona.
got it. Anche perché dicono che Android usa linux, ma non è esattamente vero.
__________________
Un wormhole (buco di tarlo, in italiano), detto anche Ponte di Einstein-Rosen, è una ipotetica caratteristica topologica dello spaziotempo che è essenzialmente una "scorciatoia" da un punto dell'universo a un altro, che permetterebbe di viaggiare tra di essi più velocemente di quanto impiegherebbe la luce a percorrere la distanza attraverso lo spazio normale.
Go to a Wormhole
dierre è offline   Rispondi citando il messaggio o parte di esso
Old 14-05-2011, 15:37   #7
Emaborsa
Senior Member
 
L'Avatar di Emaborsa
 
Iscritto dal: Sep 2004
Città: Bolzano
Messaggi: 2163
Quote:
Originariamente inviato da dierre Guarda i messaggi
got it. Anche perché dicono che Android usa linux, ma non è esattamente vero.
....se si parla di grafica, per esempio OpenGL, si. Ma siccome libsqlite3.s include la libpthread, non è possibile. Questo perchè android ha le sue librerie riguardo i thread.
__________________
Vendo...nulla.
Cerco...la felicità
.
Emaborsa è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
Alla guida della nuova auto elettrica ci...
GeForce RTX 3060 12 GB a giugno di nuovo...
Apple Music sarà sponsor ufficiale di Po...
The Mandalorian & Grogu: trailer fin...
Fedeltà record: Apple blinda gli utenti,...
Volkswagen ID.3 Neo: fino a 630 km di au...
GPU-Z mette i dati personali a rischio? ...
La PS6 potrebbe essere retrocompatibile ...
Amazfit Cheetah 2 Pro arriva in Italia: ...
Duolingo ammette l'errore dopo un anno: ...
Samsung Galaxy Tab S10 Lite a 249€: il t...
Samsung Micro RGB: la rivoluzione del co...
Sempre più autonomia per gli smar...
Windows sotto attacco: tre zero-day di M...
Capcom e NVIDIA spiegano il path tracing...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:05.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v