[Progetto] Easy Framework c v0.4.3 17/05/2015

Iniziative e progetti della comunità legati a Ubuntu.
Regole della sezione
Questa sezione ha lo scopo di raccogliere le iniziative/progetti della nostra Comunità legati ad Ubuntu. I progetti ospitati nascono da iniziative degli utenti o gruppi di utenti. In futuro i progetti potrebbero rimanere iniziative "personali" o essere integrate nella distribuzione, sponsorizzate da Ubuntu o da Canonical a discrezione dei responsabili. All'interno di essa sarà possibile inserire delle discussioni che hanno la funzione di pubblicizzare avvenimenti, iniziative e progetti software su Ubuntu e GNU/Linux in generale. Sarà inoltre possibile per gli utenti proporre lo sviluppo di nuovi software e in questo caso la discussione di richiesta avrà la funzione di generare un requisito funzionale del prodotto da sviluppare.

Sezione I - Iniziative
  • Fanno parte di iniziative, ad esempio, le seguenti categorie: corsi, progetti editoriali, libri.
  • La segnalazione di un'iniziativa avviene creando una discussione con l'annuncio.
  • Una volta effettuata la segnalazione, la discussione viene chiusa dal Gruppo Forum.
  • Se l'iniziativa esposta comporta un costo di adesione o fruizione, questo deve essere esplicitamente riportato all'interno della discussione.
  • È obbligatorio segnalare all'interno della discussione i riferimenti per poter contattare/partecipare all'iniziativa.
Sezione II - Progetti
  • La segnalazione di un progetto software, come per le iniziative, avviene e si sviluppa all'interno di una singola discussione.
  • Sarà consentito l'inserimento di software solo se rilasciati sotto licenza GPL (in tutte le sue versioni) o equivalente FOSS, tale da garantire agli utenti l'utilizzo del prodotto senza restrizioni e agli sviluppatori la proprietà intellettuale del codice prodotto.
  • Nell'oggetto della discussione dovrà essere riportata la categoria (es. [Iniziativa], [Progetto] o [Proposta]) e una semplice descrizione del progetto.
  • Se il progetto ha già un sito che lo ospita sarà a discrezione del Gruppo Forum chiuderla come segnalazione o lasciarla aperta.
  • Se il progetto non ha un sito che lo ospita si potranno aprire due discussioni, una per proporre modifiche/implementazioni (dove nel titolo occorre specificare [sviluppo]) ed una per segnalare problemi (e nel titolo dovrà comparire [supporto]).
  • Non è consentita l'apertura di nuove discussioni in riferimento a versioni superiori o modificate di un prodotto già riportato in precedenza.
  • Se il software oggetto del progetto ha una dimensione non superiore ai 128 kB, per prodotti che non hanno un sito che li ospita, sarà possibile allegarlo alla discussione.
Sezione III - Proposte
  • Una proposta deve essere eseguita e si svilupperà all'interno di una singola discussione.
  • Le proposte dovranno essere inserite direttamente nella sezione "Progetti della Comunità".
  • Dovranno essere specificate le funzionalità che devono essere sviluppate.
  • Non dovranno essere riportate diciture tipo "...deve fare come questo software...", ma indicare nel miglior modo possibile i requisiti.
  • Una volta segnalata la discussione resterà aperta per consentire uno scambio di idee su come sviluppare il codice o finché gli sviluppatori non forniranno una soluzione (da pubblicizzare poi, come visto prima, nella sezione Progetti) che ne soddisfi il requisito.
Per quanto non esposto sopra, si fa comunque riferimento al Regolamento del forum ed al Codice di Condotta della Comunità.
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

[Progetto] Easy Framework c v0.4.3 17/05/2015

Messaggio da vbextreme »

Mentre studiavo il linguaggio c mi sono ritrovato ad avere parecchie funzioni, le ho ordinate e messe in delle librerie ritrovandomi senza volere un "piccolo" framework.
Ho iniziato a scrivere i vari man, non ho ancora finito perchè il lavoro è veramente lungo e noioso.
Ecco una carrellata rapida di quello che contiene:

easyalloc: Gestisce la memoria e ha una funzione per allocare la memoria personalizzata
easybenchmark: Alcune funzioni per le performace
easyconsole: Un vastissimo set di funzioni per lavorare con il terminale
easycrypto: Hash, MD5, AES
easyfile: Gestire file e directory
easyhttp: Http get/post, Ftp, Imap
easylist: Liste,Alberi, Code
easymarklang: uno speciale xml che servirà in futuro per la gestione delle gui
easymath: Date, Matrix, FFT, etc
easyopt: Piu semplice gestione delle opzioni
easyprocess: Info su processi, processor, inet etc, facile uso di pipe, nuova system, cpu speed, internet speed,etc
easyserial: Serial port
easysocket: Server e client, sto lavorando per la ssl
easystring:Funzioni Aggiunte per la string.h
easythread: Semplificazione dei thread con aggiunta di avvio thread sospeso e mutex coi nomi
easytype: I tipi usati da easyframework

Potete trovarlo su github EasyFramework

INSTALLAZIONE
Assicuratevi di avere pthread e libcurl

Codice: Seleziona tutto

$ ./generate
$ sudo ./install
BUG
La versione GCC 4.8 da me testata non esporta correttamente alcuni simboli tipo la system call stat.
Questo errore si presenta quando linkate una libreria del framework con errori in dso, per risolvere usare l'opzione --fix-dso e passate la directory di libgcc.a
esempio:

Codice: Seleziona tutto

$ ./generate --fix-dso /usr/lib/gcc/arm-linux-gnueabihf/4.8/libgcc.a
In altre macchine non vengono esportate correttamente le funzioni della ssp causando l'errore in fase di compilazione :"hidden symbol '__stack_chk_fail_local' isn't defined"
Per risolvere usate l'opzione --gcc-linker for example

Codice: Seleziona tutto

$ ./generate --gcc-linker
Ultima modifica di vbextreme il domenica 17 maggio 2015, 8:34, modificato 3 volte in totale.
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

Potresti fornirmi più dettagli su come installare? Mi vergogno un po' a fare sta domanda ma... :shy:

Ho scaricato il pacchetto zip, ma poi non so bene come fare.
Scusa l'ignoranza
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

estrai il pacchetto e hai cosi tutto il codice sorgente.
Entri dentro alla cartella easy framework
$./generate
$sudo ./installato

prima però assicurati di avere installata PA pthread e la libcurl altrimenti non funzia.
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

prima però assicurati di avere installata la pthread e la libcurl altrimenti non funzia.
in usr/include giusto?

pthread ce l'ho, l'altra invece no adesso vedo
grazie
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

Ti riporto il mio errore, magari non centra nulla libcurl:

Codice: Seleziona tutto

gcc -Wall -O3 -I../easytype  -fpic -c easyalloc.c -o oobj/easyalloc.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
ld -O3  -shared -o libeasyalloc.so ./oobj/easyalloc.o ./oobj/main.o  
end make libeasyalloc.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easybenchmark.c -o oobj/easybenchmark.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
ld -O3  -shared -o libeasybenchmark.so ./oobj/easybenchmark.o ./oobj/main.o  
./oobj/easybenchmark.o: In function `bch_perf':
easybenchmark.c:(.text+0x3cb): undefined reference to `__stack_chk_fail_local'
ld: libeasybenchmark.so: hidden symbol `__stack_chk_fail_local' isn't defined
ld: final link failed: Bad value
make: *** [libeasybenchmark.so] Errore 1
[ER]easybenchmark
EDIT:
io ho la cartella curl, ma libcurl no.
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

grazie della segnalazione, il problema però non è l EF ma GCC compilato male....
prova cosi:
apri generate
portati alla riga 78 dove c'è libsoex=....
ora vedi [easybenchmark]=""
dentro alle virgolette scrivi "-lssp" riprova, se da ancora errore prova con
"-lssp -lc"
fammi sapere
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

ok, ti faccio sapere sta sera ora sono preso e devo andare al lavoro. Sta sera dopo le 22 provo...o se riesco prima delle 14
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

ho provato ma non mi funziona, non vorrei fosse colpa mia.
ecco l'output con -lssp

Codice: Seleziona tutto

[OK]gcc
[OK]make
[OK]stdio.h
[OK]stdlib.h
[OK]string.h
[OK]memory.h
[OK]unistd.h
[OK]fcntl.h
[OK]ioctl.h
[OK]sched.h
[OK]malloc.h
[OK]time.h
[OK]resource.h
[OK]errno.h
[OK]input.h
[OK]termios.h
[OK]types.h
[OK]stat.h
[OK]time.h
[OK]dirent.h
[OK]utime.h
[OK]pwd.h
[OK]curl.h
[OK]complex.h
[OK]math.h
[OK]ctype.h
[OK]getopt.h
[OK]signal.h
[OK]wait.h
[OK]socket.h
[OK]inet.h
[OK]in.h
[OK]tcp.h
[OK]netdb.h
[OK]regex.h
[OK]semaphore.h
[OK]sysctl.h
[OK]shm.h
[OK]ipc.h
[OK]inttypes.h
[OK]libcurl.so
[OK]libm.so
[OK]easyalloc
[OK]easybenchmark
[OK]easyconsole
[OK]easycrypto
[OK]easyfile
[OK]easylist
[OK]easymath
[OK]easyserial
[OK]easystring
[OK]easythread
[OK]easyopt
[OK]easymarklang
[OK]easysocket
[OK]easyprocess
[OK]easyhttp
gcc -Wall -O3 -I../easytype  -fpic -c easyalloc.c -o oobj/easyalloc.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
ld -O3  -shared -o libeasyalloc.so ./oobj/easyalloc.o ./oobj/main.o  
end make libeasyalloc.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easybenchmark.c -o oobj/easybenchmark.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
ld -O3 -lssp -shared -o libeasybenchmark.so ./oobj/easybenchmark.o ./oobj/main.o  -lssp
ld: cannot find -lssp
ld: cannot find -lssp
make: *** [libeasybenchmark.so] Errore 1
[ER]easybenchmark
idem con la seconda opzione
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

rimuovi -lssp
riga 68 dflagsex ..... [easybenchmark]="-fno-stack-protector"

devo migliorare il file configure, odio questi errori stupidi!
Appena capisco perché lo genera....
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

rimuovi -lssp
riga 68 dflagsex ..... [easybenchmark]="-fno-stack-protector"

devo migliorare il file configure, odio questi errori stupidi!
Appena capisco perché lo genera....
Nulla :(
Ma per caso devo attivare qualche permesso da superutente o altro?
A te s'installa? Pechè se a te non da problemi è evidente che sono io che combino qualcosa.
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

è sicuramente un problema di come sono stati esportati i simboli nel tuo GCC, è un bug di ubuntu per quanto ne so io.
su arm xubuntu 13.10 ho altri bug, ad esempio si erano dimenticati di esportare la funzione stat()....
Che distro hai? 32 o 64 bit? sulla 64 bit non so se funzioni, anzi.....

quello che hai scritto in dflagsex prova a scriverlo in cflagsex, e poi lo cancelli da dflagsex.
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

32 bits.
provo
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

Frena,frena

ORA MI AMMAZZERAI !!!!

ho letto male: riga 68, non 78!!!!
ora provo

EDIT: no ,era giusto ,prima hai detto 68, poi 78
Comunque non vorrei avere corrotto il file generate, magari non ho riportato come originale.
Domani riscarico lo zip in modo tale da partire da zero.
Tu magari intanto ci studi su.
Non ti posso essere d'aiuto, anche se mi piacerebbe davvero.
Ultima modifica di gila75 il giovedì 14 maggio 2015, 23:49, modificato 1 volta in totale.
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

se continua a non funzionare puoi provare cosi:
ripristina tutto.
apri easymkf
trova questa riga(~25)

Codice: Seleziona tutto

echo "LIBLK      = ld" >> $destmk
e modifica la cosi:

Codice: Seleziona tutto

echo "LIBLK      = gcc" >> $destmk
salva e di nuovo ./generate

in alternativa puoi compilarlo con GCC 4.2 che non dovrebbe essere buggato.
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

con gcc -v
ottengo:

Codice: Seleziona tutto

gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-linux-gnu/4.6/lto-wrapper
Target: i686-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.6 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=i686-linux-gnu --host=i686-linux-gnu --target=i686-linux-gnu
Thread model: posix
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) 
quindi la 4.6.3 , non so se è buggata.
Domani provo
:ciao:
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

a quanto pare si!
potresti provare ad installare il GCC 4.8
cercherò di aggiungere qualche meccanismo per semplificare la risoluzione di questi antipatici bug!

oggi ho iniziato ad installare lubuntu 14.04 sono proprio curioso di installare l' EF e vedere se hanno risolto qualcosa....
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

Sto provando la 5.1.0 , ma quando i pc sono in vena di rogne...non vuole installarla!!!
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

con i nuovi comandi alla riga 25:

generate:

Codice: Seleziona tutto

gila@ubuntu:~/Scrivania/EasyFramework-master$ ./generate
[OK]gcc
[OK]make
[OK]stdio.h
[OK]stdlib.h
[OK]string.h
[OK]memory.h
[OK]unistd.h
[OK]fcntl.h
[OK]ioctl.h
[OK]sched.h
[OK]malloc.h
[OK]time.h
[OK]resource.h
[OK]errno.h
[OK]input.h
[OK]termios.h
[OK]types.h
[OK]stat.h
[OK]time.h
[OK]dirent.h
[OK]utime.h
[OK]pwd.h
[OK]curl.h
[OK]complex.h
[OK]math.h
[OK]ctype.h
[OK]getopt.h
[OK]signal.h
[OK]wait.h
[OK]socket.h
[OK]inet.h
[OK]in.h
[OK]tcp.h
[OK]netdb.h
[OK]regex.h
[OK]semaphore.h
[OK]sysctl.h
[OK]shm.h
[OK]ipc.h
[OK]inttypes.h
[OK]libcurl.so
[OK]libm.so
[OK]easyalloc
[OK]easybenchmark
[OK]easyconsole
[OK]easycrypto
[OK]easyfile
[OK]easylist
[OK]easymath
[OK]easyserial
[OK]easystring
[OK]easythread
[OK]easyopt
[OK]easymarklang
[OK]easysocket
[OK]easyprocess
[OK]easyhttp
gcc -Wall -O3 -I../easytype  -fpic -c easyalloc.c -o oobj/easyalloc.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasyalloc.so ./oobj/easyalloc.o ./oobj/main.o  
end make libeasyalloc.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easybenchmark.c -o oobj/easybenchmark.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasybenchmark.so ./oobj/easybenchmark.o ./oobj/main.o  
end make libeasybenchmark.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easyconsole.c -o oobj/easyconsole.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasyconsole.so ./oobj/easyconsole.o ./oobj/main.o  
end make libeasyconsole.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easycrypto.c -o oobj/easycrypto.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasycrypto.so ./oobj/easycrypto.o ./oobj/main.o  
end make libeasycrypto.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c efile.c -o oobj/efile.o -D_LIB 
efile.c: In function ‘cfg_write’:
efile.c:430:11: warning: ignoring return value of ‘ftruncate’, declared with attribute warn_unused_result [-Wunused-result]
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasyfile.so ./oobj/efile.o ./oobj/main.o  
end make libeasyfile.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easylist.c -o oobj/easylist.o -D_LIB 
easylist.c: In function ‘ltr_find’:
easylist.c:541:5: warning: ‘r’ may be used uninitialized in this function [-Wuninitialized]
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasylist.so ./oobj/easylist.o ./oobj/main.o  
end make libeasylist.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easymath.c -o oobj/easymath.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasymath.so ./oobj/easymath.o ./oobj/main.o  -lm
end make libeasymath.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c serfnc.c -o oobj/serfnc.o -D_LIB 
gcc -O3  -shared -o libeasyserial.so ./oobj/main.o ./oobj/serfnc.o  
end make libeasyserial.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easystring.c -o oobj/easystring.o -D_LIB 
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasystring.so ./oobj/easystring.o ./oobj/main.o  
end make libeasystring.so
[OK]make
gcc -Wall -O3 -I../easytype  -fpic -c easythread.c -o oobj/easythread.o -D_LIB 
easythread.c: In function ‘thr_talk_hook’:
easythread.c:743:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
easythread.c:744:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
easythread.c:746:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
easythread.c:748:8: warning: ignoring return value of ‘fgets’, declared with attribute warn_unused_result [-Wunused-result]
gcc -Wall -O3 -I../easytype  -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3  -shared -o libeasythread.so ./oobj/easythread.o ./oobj/main.o  -lpthread
end make libeasythread.so
[OK]make
gcc -Wall -O3 -I../easytype -I../easystring -I../easyconsole -fpic -c easyopt.c -o oobj/easyopt.o -D_LIB 
gcc -Wall -O3 -I../easytype -I../easystring -I../easyconsole -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3 -L../easystring -L../easyconsole -shared -o libeasyopt.so ./oobj/easyopt.o ./oobj/main.o  -leasystring -leasyconsole
end make libeasyopt.so
[OK]make
gcc -Wall -O3 -I../easytype -I../easystring -fpic -c easymarklang.c -o oobj/easymarklang.o -D_LIB 
gcc -Wall -O3 -I../easytype -I../easystring -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3 -L../easystring -shared -o libeasymarklang.so ./oobj/easymarklang.o ./oobj/main.o  -leasystring
end make libeasymarklang.so
[OK]make
gcc -Wall -O3 -I../easytype -I../easythread -fpic -c easysocket.c -o oobj/easysocket.o -D_LIB 
gcc -Wall -O3 -I../easytype -I../easythread -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3 -L../easythread -shared -o libeasysocket.so ./oobj/easysocket.o ./oobj/main.o  -leasythread
end make libeasysocket.so
[OK]make
gcc -Wall -O3 -I../easytype -I../easystring -I../easyfile -I../easythread -fpic -c easyprocess.c -o oobj/easyprocess.o -D_LIB 
gcc -Wall -O3 -I../easytype -I../easystring -I../easyfile -I../easythread -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3 -L../easystring -L../easyfile -L../easythread -shared -o libeasyprocess.so ./oobj/easyprocess.o ./oobj/main.o  -leasystring -leasyfile -leasythread
end make libeasyprocess.so
[OK]make
gcc -Wall -O3 -I../easytype -I../easystring -I../easybenchmark -I../easythread -fpic -c easyhttp.c -o oobj/easyhttp.o -D_LIB 
easyhttp.c: In function ‘_ema_parsetofetch’:
easyhttp.c:1169:2: warning: ‘idf’ may be used uninitialized in this function [-Wuninitialized]
gcc -Wall -O3 -I../easytype -I../easystring -I../easybenchmark -I../easythread -fpic -c main.c -o oobj/main.o -D_LIB 
gcc -O3 -L../easystring -L../easybenchmark -L../easythread -shared -o libeasyhttp.so ./oobj/easyhttp.o ./oobj/main.o  -leasystring -leasybenchmark -leasythread -lcurl
end make libeasyhttp.so
[OK]make

[OK]Generate
quindi tutto ok
poi sudo -s e poi install:

Codice: Seleziona tutto

--------------------------
- Install Easy Framework -
--------------------------

[OK]easytype
cp ./libeasyalloc.so /usr/lib/libeasyalloc.so
cp ./easyalloc.h /usr/include/easyalloc.h
../easyman easyalloc 3
[..]mancp: impossibile creare il file regolare "/usr/local/man/man3/easyalloc.3": File o directory non esistente
gzip: /usr/local/man/man3/easyalloc.3: No such file or directory
 OK
[OK]easyalloc
cp ./libeasybenchmark.so /usr/lib/libeasybenchmark.so
cp ./easybenchmark.h /usr/include/easybenchmark.h
../easyman easybenchmark 3
[..]mancp: impossibile creare il file regolare "/usr/local/man/man3/easybenchmark.3": File o directory non esistente
gzip: /usr/local/man/man3/easybenchmark.3: No such file or directory
 OK
[OK]easybenchmark
cp ./libeasyconsole.so /usr/lib/libeasyconsole.so
cp ./easyconsole.h /usr/include/easyconsole.h
../easyman easyconsole 3
[..]mancp: impossibile creare il file regolare "/usr/local/man/man3/easyconsole.3": File o directory non esistente
gzip: /usr/local/man/man3/easyconsole.3: No such file or directory
 OK
[OK]easyconsole
cp ./libeasycrypto.so /usr/lib/libeasycrypto.so
cp ./easycrypto.h /usr/include/easycrypto.h
../easyman easycrypto 3
[..]mancp: impossibile creare il file regolare "/usr/local/man/man3/easycrypto.3": File o directory non esistente
gzip: /usr/local/man/man3/easycrypto.3: No such file or directory
 OK
[OK]easycrypto
cp ./libeasyfile.so /usr/lib/libeasyfile.so
cp ./easyfile.h /usr/include/easyfile.h
[OK]easyfile
cp ./libeasylist.so /usr/lib/libeasylist.so
cp ./easylist.h /usr/include/easylist.h
[OK]easylist
cp ./libeasymath.so /usr/lib/libeasymath.so
cp ./easymath.h /usr/include/easymath.h
[OK]easymath
cp ./libeasyserial.so /usr/lib/libeasyserial.so
cp ./easyserial.h /usr/include/easyserial.h
[OK]easyserial
cp ./libeasystring.so /usr/lib/libeasystring.so
cp ./easystring.h /usr/include/easystring.h
[OK]easystring
cp ./libeasythread.so /usr/lib/libeasythread.so
cp ./easythread.h /usr/include/easythread.h
[OK]easythread
cp ./libeasyopt.so /usr/lib/libeasyopt.so
cp ./easyopt.h /usr/include/easyopt.h
[OK]easyopt
cp ./libeasymarklang.so /usr/lib/libeasymarklang.so
cp ./easymarklang.h /usr/include/easymarklang.h
[OK]easymarklang
cp ./libeasysocket.so /usr/lib/libeasysocket.so
cp ./easysocket.h /usr/include/easysocket.h
[OK]easysocket
cp ./libeasyprocess.so /usr/lib/libeasyprocess.so
cp ./easyprocess.h /usr/include/easyprocess.h
[OK]easyprocess
cp ./libeasyhttp.so /usr/lib/libeasyhttp.so
cp ./easyhttp.h /usr/include/easyhttp.h
[OK]easyhttp
./easyman: riga 7: ../easystatus: File o directory non esistente
cp: impossibile creare il file regolare "/usr/local/man/man3/easyframework.3": File o directory non esistente
gzip: /usr/local/man/man3/easyframework.3: No such file or directory
./easyman: riga 10: ../easystatus: File o directory non esistente
------------
- Complete -
------------
tutto ok :birra:
Grande Vb!!
Ora devo capire come funziona.
io ho ancora la cartella decompressa in scrivania ,ma dove ha installato?
Non ho ben chiaro il concetto.
A sto punto però credo che il compilatore non abbia nulla no?
Avatar utente
vbextreme
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1214
Iscrizione: domenica 12 gennaio 2014, 14:06
Desktop: lxde
Distribuzione: xubuntu 14.10

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da vbextreme »

grazie infinite @Gila!, rimane il fatto che il pacchetto gcc sia stato compilato male e nel tuo caso il problema risiede nella libreria spp che per qualche ragione non hanno esportato correttamente tutte le sue funzioni, queste domande bisognerebbe farle ai developer ovvero a chi crea i pacchetti e li distribuisce. L'unica fortuna è che il gcc ha mille armi!
[edit] Ho appena installato EF su lubuntu arm 14.04 senza nessun problema ( o almeno sembra) quindi presumo siano riusciti a compilare bene il gcc [/edit]

Ora ti spiego un pò, con ./generate crei tutti i makefile dentro ad ogni cartella (easyconsole, easyalloc, etc) e li compili in librerie .so
Con ./install invece non fai altro che copiare tutte le librerie nella cartella /usr/lib e installi anche i pochi man che ho creato.
Ora puoi provare a scrivere:

Codice: Seleziona tutto

$ man easyframework
$ man easyalloc
$ man ...
Teoricamente ogni libreria ha il suo man, praticamente non li ho scritti tutti.....
Nel man trovi una rapidissima descrizione della libreria cosa fa.

Ora se vuoi provare subito come funziona puoi fare cosi:
crea un nuovo progetto,
main.c:

Codice: Seleziona tutto

#include <stdlib.h>
#include <stdio.h>
#include <easyconsole.h>
#include <easytype.h>

INT32 main(INT32 argc, CHAR** argv)
{
    con_setcolor(0, CON_COLOR_RED);
    puts("CIAO MONDO!");
    con_setcolor(0, 0);
    return 0;
}
ora linki la libreria "-leasyconsole" e compili, esegui e per tutte le altre domande io sono qui
Ultima modifica di vbextreme il venerdì 15 maggio 2015, 11:56, modificato 1 volta in totale.
Easy framework per il linguaggio C.
vbextreme hack your life
gila75
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 2739
Iscrizione: mercoledì 16 gennaio 2013, 17:28
Desktop: ubuntu-2d
Distribuzione: Ubuntu 12.04.2 LTS i686
Località: Airuno(Lecco)

Re: [Progetto] Easy Framework c v0.4 29/04/2015

Messaggio da gila75 »

grazie infinite @Gila!,
E di cosa :D io purtroppo non posso dare un contributo, ma i progetti interessanti e le persone valide vanno promossi.
Non so se faccio in tempo a provare in questi giorni, alla peggio va a Lunedì.

Sarebbe bello un giorno se riuscissi a fare solo la metà di quello che hai fatto tu.
Complimenti ancora
Scrivi risposta

Ritorna a “Progetti della Comunità”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 7 ospiti