-
Notifications
You must be signed in to change notification settings - Fork 233
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cannot compile - Linux Mint 18.2 #87
Comments
Ciao,
not your fault, it's just that the library changed the name of that file
in the meanwhile.
Use the latest version of libav (12.2) where that file is.
That file is not part of the API, so they unfortunately change it quite
frequently....
Sorry, I should check the version and warn about it. My fault.
Federico
…On Fri, Nov 10, 2017 at 6:36 PM, Dan Lynch ***@***.***> wrote:
I've read through many threads on compiling issues and can't find a
problem the same as mine. I have a feeling it's something stupid. I am on
Linux Mint 18.2 which is essentially Ubuntu 16.04 under the hood. I've also
tried this on stock install of Ubuntu 16.04 with the same errors.
I follow the instructions to compile Untrunc after installing all the
libav stuff with Apt. I get this error
track.cpp:51:32: fatal error: libavcodec/h264dec.h: No such file or
directory
I have tried downloading and compiling libav 12.2 which compiles fine as
per instructions. Then go back to compile Untrunc using L./libav-12.2/ in
the appropriate places. Same error as above. It *still can't find
libavcodec/h264dec.h*. I then tried again following the instructions in
issue 78 and used libav 0.8.7 which again compiled fine. When I run this
command from the main untrunc-master directory:
g++ -o untrunc file.cpp main.cpp track.cpp atom.cpp mp4.cpp
-I./libav-0.8.7 -L./libav-0.8.7/libavformat -lavformat
-L./libav-0.8.7/libavcodec -lavcodec -L./libav-0.8.7/libavutil -lavutil
-lpthread
I still get fatal error, cannot find h264dec.h
I looked in the folder where I compiled libav 0.8.7 and indeed there is no
file h264dec.h in the libavcodec subfolder. So it's never going to find it.
Am I doing something really stupid here? I'm a pretty experienced Linux
user and developer, or so I thought.
Many thanks in advance, sorry for long winded explanation :)
Dan
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#87>, or mute the thread
<https://github.com/notifications/unsubscribe-auth/ACg662xr8cj2_-u9Gk914IhYs3YWoRRmks5s1ImZgaJpZM4QZ4eP>
.
|
Disregard the previous email.
I didn't understand exactly: you used 12.2 and it compiled on Ubuntu but
not on Mint?
If the h264dec.h is not found but it's there, the -I path specification
should be the problem. Could you write here that command line?
I have discovered problems with the additional libraries (-lz -lbz2
-lavresample...) sometimes needed and the reason is
that it depends on which libraries you have installed in your system when
compiling libav, because configure autodetects
and pick libraries!
It's a moving target...
Federico
On Mon, Nov 13, 2017 at 11:54 AM, Federico Ponchio <[email protected]>
wrote:
… Ciao,
not your fault, it's just that the library changed the name of that
file in the meanwhile.
Use the latest version of libav (12.2) where that file is.
That file is not part of the API, so they unfortunately change it quite
frequently....
Sorry, I should check the version and warn about it. My fault.
Federico
On Fri, Nov 10, 2017 at 6:36 PM, Dan Lynch ***@***.***>
wrote:
> I've read through many threads on compiling issues and can't find a
> problem the same as mine. I have a feeling it's something stupid. I am on
> Linux Mint 18.2 which is essentially Ubuntu 16.04 under the hood. I've also
> tried this on stock install of Ubuntu 16.04 with the same errors.
>
> I follow the instructions to compile Untrunc after installing all the
> libav stuff with Apt. I get this error
>
> track.cpp:51:32: fatal error: libavcodec/h264dec.h: No such file or
> directory
>
> I have tried downloading and compiling libav 12.2 which compiles fine as
> per instructions. Then go back to compile Untrunc using L./libav-12.2/ in
> the appropriate places. Same error as above. It *still can't find
> libavcodec/h264dec.h*. I then tried again following the instructions in
> issue 78 and used libav 0.8.7 which again compiled fine. When I run this
> command from the main untrunc-master directory:
>
> g++ -o untrunc file.cpp main.cpp track.cpp atom.cpp mp4.cpp
> -I./libav-0.8.7 -L./libav-0.8.7/libavformat -lavformat
> -L./libav-0.8.7/libavcodec -lavcodec -L./libav-0.8.7/libavutil -lavutil
> -lpthread
>
> I still get fatal error, cannot find h264dec.h
>
> I looked in the folder where I compiled libav 0.8.7 and indeed there is
> no file h264dec.h in the libavcodec subfolder. So it's never going to find
> it.
>
> Am I doing something really stupid here? I'm a pretty experienced Linux
> user and developer, or so I thought.
>
> Many thanks in advance, sorry for long winded explanation :)
>
> Dan
>
> —
> You are receiving this because you are subscribed to this thread.
> Reply to this email directly, view it on GitHub
> <#87>, or mute the thread
> <https://github.com/notifications/unsubscribe-auth/ACg662xr8cj2_-u9Gk914IhYs3YWoRRmks5s1ImZgaJpZM4QZ4eP>
> .
>
|
Hi Frederico, Thanks for the reply! I could compile libav 12.2 and 0.8.7 fine on both Linux Mint and Ubuntu. That file untrunc was looking for didn't seem to exist though. Not sure why. The good news is I fixed it now. I deleted everything and started again compiling libav12.2, this time it seems to have the h264dec.h file as it should and Untrunc compiled. Sorry to waste your time. I do have another question, I'm trying to repair a file that's around 300mb and my example working file is over 700mb. When I run untrunc with these two it seems to work for a while but then runs out of buffer memory:
Can I increase the buffer size somehow in the options? |
Sorry, ignore my previous comment, it did work on the 2 files I was trying. It just took ages to write the repaired file to the folder. I need to be more patient. Thanks for all your work on this project and your responses, I appreciate it!! :-) |
Actually I need to give some feedback on the processing :)
I'm happy it worked.
Federico
…On Mon, Nov 13, 2017 at 3:07 PM, Dan Lynch ***@***.***> wrote:
Sorry, ignore my previous comment, it did work on the 2 files I was
trying. It just took ages to write the repaired file to the folder. I need
to be more patient.
Thanks for all your work on this project and your responses, I appreciate
it!! :-)
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#87 (comment)>, or mute
the thread
<https://github.com/notifications/unsubscribe-auth/ACg667SM6fIiP6hfBcF2XXVvdjwrc7unks5s2E0ngaJpZM4QZ4eP>
.
|
Same error on arch linux
|
The problem seems to be related to libav-tools needing yasm to be installed... maybe should be added as a dependency... |
You can configure Libav/FFmpeg to use the software resampler instead of the assembler one. |
I have the same problem on Ubuntu 16.04 I have installed the I followed the Installing on Ubuntu
which ended with
(I do not understand half of the things I was doing / |
The file Libav is a fork of FFmpeg, and is still similar to FFmpeg. I don't use Ubuntu nor Arch, so I only updated the Installing on other operating systems (Manual Libav installation) section in Untrunc's Readme (updated). The Libav Sources can be downloaded as Release Tarball or directly from the Git Repository or its GitHub Mirror. For the FFmpeg sources with Debian / Ubuntu changes look at the bottom of the Ubuntu FFmpeg page. |
You can configure Libav to use the software resampler instead of the assembler one. |
I am using High Sierra Mac. Not sure if this is related but I also have this error when compiling. I am compiling libav 0.8.7 according to the instructions #77. g++ -o untrunc file.cpp main.cpp track.cpp atom.cpp mp4.cpp -I./libav-0.8.7 -L./libav-0.8.7/libavformat -lavformat -L./libav-0.8.7/libavcodec -lavcodec -L./libav-0.8.7/libavutil -lavutil -lpthread -lz -framework CoreFoundation -framework CoreVideo -framework VideoDecodeAcceleration -lbz2 -DOSX track.cpp:52:10: fatal error: 'libavcodec/h264dec.h' file not found Also received endian.h missing error with the compiling code in #77, and tried the compiling code below (#54) after "sed -i.orig -e's:endian.h:machine/endian.h:' *cpp" . g++ -o untrunc file.cpp main.cpp track.cpp atom.cpp mp4.cpp -I./libav-12.2 -L./libav-12.2/libavformat -lavformat -L./libav-12.2/libavcodec -lavcodec -L./libav-12.2/libavresample -lavresample -L./libav-12.2/libavutil -lavutil -lpthread -lz -framework CoreFoundation -framework CoreVideo -framework VideoDecodeAcceleration -lbz2 Is it possible to install on High Sierra? Really need the software. Thanks! |
You should try the docker build that was recently merged into master |
I've read through many threads on compiling issues and can't find a problem the same as mine. I have a feeling it's something stupid. I am on Linux Mint 18.2 which is essentially Ubuntu 16.04 under the hood. I've also tried this on stock install of Ubuntu 16.04 with the same errors.
I follow the instructions to compile Untrunc after installing all the libav stuff with Apt. I get this error
I have tried downloading and compiling libav 12.2 which compiles fine as per instructions. Then go back to compile Untrunc using L./libav-12.2/ in the appropriate places. Same error as above. It still can't find libavcodec/h264dec.h. I then tried again following the instructions in issue 78 and used libav 0.8.7 which again compiled fine. When I run this command from the main untrunc-master directory:
I still get fatal error, cannot find h264dec.h
I looked in the folder where I compiled libav 0.8.7 and indeed there is no file h264dec.h in the libavcodec subfolder. So it's never going to find it.
Am I doing something really stupid here? I'm a pretty experienced Linux user and developer, or so I thought.
Many thanks in advance, sorry for long winded explanation :)
Dan
The text was updated successfully, but these errors were encountered: