Intel i9-9900K | MSI MPG Z390 Gaming Pro Carbon | MSI RTX 2080Ti Gaming X Trio | Ballistix Sport LT (32GB) | MSI Optix MAG274QRF-QD 1440p | Samsung 970 EVO Plus (2TB) | NZXT Kraken X52 | Valve Index | Fractal Design R6 | Synology DS420j
de "-I"optie gebruiken om aan te geven waar de extra Include files staan.
http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html
Je zult ook moeten aangeven waar de library (.a ?) files staan.
http://gcc.gnu.org/onlinedocs/gcc/Preprocessor-Options.html
Je zult ook moeten aangeven waar de library (.a ?) files staan.
Need more data. We want your specs. Ik ben ook maar dom. anders: forum, ff reggen, ff topic maken
En als je een oplossing hebt gevonden laat het ook ujb ff in dit topic horen.
Bedank voor je info naar de -I switches.
Inderdaad, daarmee zijn andere paths op te geven naast de default paths.
Ik wil wel graag even deze thread compleet maken zodat anderen die wellicht ook tegen dit issue aanlopen en deze thread tegenkomen de complete informatie hebben.
Ok, dit is een voorbeeld gcc commando die je hier en daar vind op websites met tutorials en samples, maar niet zondermeer op MinGW en gcc op Windows werken.
Hier staat dus dat gcc het C sourcebestand tutorial01.c gaat builden naar tutorial01.exe.
Daarbij zal gcc 5 libraries bijlinken (de switches -lavformat t/m -lz aan het eind van de gcc regel)
Om gcc aan te geven waar de eventuele .h header files gevonden kunnen worden kan je met de -I switch dit aangeven.
Uitgaande van deze situatie van installaties van mingw en ffmpeg
en de gedefinieerde #inludes van tutorial01.c zal je deze switch moeten opgeven:
Daarmee kunnen alle .h files gevonden worden. De includes binnen ffmpeg .c en .h files zijn relatief aan de hoofdfolder van ffmpeg.
Echter omdat er ook libraries (.a of .o files) meegelinkt moeten worden zullen ook de locaties van die bestanden opgegeven worden.
De switch -lz werkt niet in windows mingw. Deze moet zijn -lws2_32.
Verder is er een -lm switch (de math library) en die staat niet bij ffmpeg maar bij de libs van mingw zelf.
Dus in totaal zullen er deze -L switches opgegeven moeten worden :
Alles bij elkaar zal dit het gcc commando zijn:
Met bovenstaande gcc kan ik nu binnen eigen C sources gebruik maken van de ffmpeg functionaliteit.
Inderdaad, daarmee zijn andere paths op te geven naast de default paths.
Ik wil wel graag even deze thread compleet maken zodat anderen die wellicht ook tegen dit issue aanlopen en deze thread tegenkomen de complete informatie hebben.
Ok, dit is een voorbeeld gcc commando die je hier en daar vind op websites met tutorials en samples, maar niet zondermeer op MinGW en gcc op Windows werken.
code:
1
| gcc tutorial01.c -o tutorial01 -lavformat -lavcodec -lavutil -lm -lz |
Hier staat dus dat gcc het C sourcebestand tutorial01.c gaat builden naar tutorial01.exe.
Daarbij zal gcc 5 libraries bijlinken (de switches -lavformat t/m -lz aan het eind van de gcc regel)
Om gcc aan te geven waar de eventuele .h header files gevonden kunnen worden kan je met de -I switch dit aangeven.
Uitgaande van deze situatie van installaties van mingw en ffmpeg
code:
1
2
| D:\mingw D:\ffmpeg-0.6.1 |
en de gedefinieerde #inludes van tutorial01.c zal je deze switch moeten opgeven:
code:
1
| -I"/d/ffmpeg-0.6.1" |
Daarmee kunnen alle .h files gevonden worden. De includes binnen ffmpeg .c en .h files zijn relatief aan de hoofdfolder van ffmpeg.
Echter omdat er ook libraries (.a of .o files) meegelinkt moeten worden zullen ook de locaties van die bestanden opgegeven worden.
De switch -lz werkt niet in windows mingw. Deze moet zijn -lws2_32.
Verder is er een -lm switch (de math library) en die staat niet bij ffmpeg maar bij de libs van mingw zelf.
Dus in totaal zullen er deze -L switches opgegeven moeten worden :
code:
1
2
3
4
5
| -L"/D/MinGW/lib" -L"/d/ffmpeg-0.6.1"/libavdevice -L"/d/ffmpeg-0.6.1"/libavformat -L"/d/ffmpeg-0.6.1"/libavcodec -L"/d/ffmpeg-0.6.1"/libavutil |
Alles bij elkaar zal dit het gcc commando zijn:
code:
1
| gcc tutorial01.c -o tutorial01 -L"/D/MinGW/lib" -L"/d/ffmpeg-0.6.1"/libavdevice -L"/d/ffmpeg-0.6.1"/libavformat -L"/d/ffmpeg-0.6.1"/libavcodec -L"/d/ffmpeg-0.6.1"/libavutil -I"/d/ffmpeg-0.6.1" -lavformat -lavcodec -lavutil -lm -lws2_32 |
Met bovenstaande gcc kan ik nu binnen eigen C sources gebruik maken van de ffmpeg functionaliteit.
Intel i9-9900K | MSI MPG Z390 Gaming Pro Carbon | MSI RTX 2080Ti Gaming X Trio | Ballistix Sport LT (32GB) | MSI Optix MAG274QRF-QD 1440p | Samsung 970 EVO Plus (2TB) | NZXT Kraken X52 | Valve Index | Fractal Design R6 | Synology DS420j