QtCam è un programma molto carino per fare varie cose con la propria webcam. Dato che vorrei includerlo nei repo di Fedora, ho avviato un percorso insieme agli sviluppatori upstream.
Visto che il programma includeva delle librerie, ho chiesto ai programmatori se potevano fornire il codice sorgente ripulito da esse, così da poter utilizzare quelle incluse nel sistema.
Giorni fa mi han contattato dicendo di aver terminato il lavoro e chiedendomi dei feedback. Così mi son apprestato a compilare il loro software, tuttavia sono incappato in un problemino molto semplice https://github.com/econsysqtcam/qtcam/issues/4#issuecomment-164379686.
Dato che disinstallare gli header di Qt4 è da folli e dato che sarebbe consigliabile utilizzare le informazioni fornite da pkg-config che serve proprio ad evitare problemi come questo, ho provato ad eseguire il comando
pkg-config --libs qt5-qtbase-devel
per ottenere delle info da inserire nel makefile, tuttavia ho solamente ottenuto
Package qt5-qtbase-devel was not found in the pkg-config search path.
Perhaps you should add the directory containing `qt5-qtbase-devel.pc'
to the PKG_CONFIG_PATH environment variable
No package 'qt5-qtbase-devel' found
In effetti hanno ragione, il problema è tuo che non dovresti avere un ambiente “sporco” con entrambe le versioni, o comunque essere in grado di gestire la coesistenza.
Per risolvere il problema alla radice, suggerisco di usare mock per creare un ambiente pulito in cui lavorare tipo:
mock -r fedora-23-x86_64 shell
porti i sorgenti dentro /var/lib/mock/fedora-23-x86_64/root, installi le dipendenze che mancano con comandi tipo:
A causa di quest’ultimo, ti toccherà di mandare il pacchetto in rpmfusion (ma forse già lo sapevi), quindi il comando per creare la shella va cambiato in:
mock -r fedora-23-x86_64-rpmfusion_free shell
in più, devi aggiungere una piccola patch per far cercare gli header in /usr/include/ffmpeg
Grazie per l’aiuto, tuttavia per quanto riguarda ffmpeg, ricordo (non ho la macchina virtuale di test sottomano) di aver risolto entrambi i problemi delle librerie video utilizzando opportune tag pkg-config aggiunte nel MakeFile.
Quale opzione è più conveniente a tuo avviso? Modificare MakeFile oppure qtcam.pro?
Tecnicamente, il risultatto non cambia, ma il Makefile viene generato a partire dal .pro, quindi è più corretto modificare quello (come nel caso delle patch ai file dei progetti basati su autotools. Anche perché è l’unico modo per avere eventualmente la patch applicata upstream