Oppure

Loading
12/09/14 13:25
Roby94
Salve, utilizzando spesso Atmel studio mi sono trovato al punto che penso sia meglio passare ad un sistema a librerie per i miei microcontrollori.
Create le mie librerie pero non riesco ad usarle.
Primo le librerie vengono compilate in un file con estensione .a sinceramente non avendo mai scritto una libreria in c++ su altro compilatore non so se questa estensione sia legata al C/C++ o ad Atmel Studio. Sta il fatto che se includo il file .a all'interno del progetto dove ho bisogno della libreria non riesco comunque ad accedervi con
#include
ne con i doppi apici ne con le parentesi <>
Potete illuminarmi su dove sia il problema? Se avete bisogno di altre informazioni non esitate a chiedere.

Grazie
aaa
12/09/14 13:33
TheDarkJuster
Io al momento non ho atmel studio installato su questo pc, ma ho lavorato molto con gli avr e ti posso dire questo: le librerie sono librerie statiche con estensione .a che vengono collegate all'eseguibile dal linker. Ma per poter accedere a queste librerie sono necessari gli headers con i prototipi di funzione che ti interessano. Se usi l' ultima versione di atmel studio trovi tutto sulle impostazioni progetto e funziona circa come con visual studio, visto che in effetti atmel studio usa la base di visual studio 2010.
aaa
12/09/14 13:55
Roby94
Ho messo il file header contenente prototipi e il fil cpp contenente le funzioni all'interno del progetto della libreria statica, compilo e includo il file .a dal file manager del progetto a questo punto cerco di includere l'header ma esso non viene trovato.
aaa
12/09/14 15:00
TheDarkJuster
non devi includerlo con il file manager. Rileggi la mia risposta.
aaa
12/09/14 16:53
Roby94
Per file manager intendo solution explorer che gia predispone per il progetto una pseudo cartella nell'albero di visualizzazione chiamata "Libraries" che al click destro mostra un menu contestuale con il pulsante "Add libraries..". Una volta aggiunta la libreria riesco a visualizzarla anche da proprietà progetto all'interno dell'impostazione Libraries ma come dicevo in precedenza non capisco poi come utilizzarla.
aaa
12/09/14 18:05
TheDarkJuster
Ah ok, ho capito, devi aggiungere i riferimenti agli headers, ovvero devi informare il compilatore della posizione della cartella con gli headers. Questo su atmel studio 6 per quel che mi ricordo si faceva sulle opzioni progetto
aaa
13/09/14 11:28
Roby94
ok ho linkato la posizione degli header, ma ora... non capisco bene cosa serva il file .a se ci sono gia i file .h e .cpp
Nel senso, se voglio distribuirla devo passare l'header file, il file .a e il file .cpp o quest'ultimo posso non includerlo?
aaa
13/09/14 11:45
TheDarkJuster
Non devi includere i file .cpp, il file .a sono i tuoi file sorgenti già compilati.
aaa