Ticket #30524 (new defect)
Avidemux avidemux-2.5.3_5+aac+dts+lame+ogg+x264+xvi fails to build
| Reported by: | rampitec@… | Owned by: | macports-tickets@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 2.0.1 |
| Keywords: | lion | Cc: | tristan.klocke@…, deesto@… |
| Port: | avidemux |
Description (last modified by ryandesign@…) (diff)
Under Lion the folloiwng fails to build (I used to build the same avidemux version and variant under Snow Leo, thought):
$ sudo port install avidemux +aac+dts+lame+ogg+x264+xvid
+aac creates problem:
:info:configure /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_avidemux/avidemux/work/avidemux_2.5.3/cmake_compile_check/faad_check.cpp:17: error: cannot convert ‘uint32_t*’ to ‘long unsigned int*’ for argument ‘4’ to ‘char NeAACDecInit2(void*, unsigned char*, long unsigned int, long unsigned int*, unsigned char*)’
Attachments
Change History
comment:1 Changed 22 months ago by ryandesign@…
- Description modified (diff)
Please use WikiFormatting and preview before submitting.
comment:2 follow-up: ↓ 3 Changed 22 months ago by jmr@…
- Version changed from 2.0.0 to 2.0.1
You've marked this as LP64; does that mean you successfully built with a 32-bit build_arch?
comment:3 in reply to: ↑ 2 Changed 22 months ago by rampitec@…
Replying to jmr@…:
You've marked this as LP64; does that mean you successfully built with a 32-bit build_arch?
I haven't tried 32 bit, there are too much dependencies to be rebuilt in 32 bit. However, error message clearly shows size mismatch between long and uint32_t. This cannot be solved just by a cast to unsigned long*.
Changed 14 months ago by blauvelta@…
- Attachment avidemux-shell_command_results.log added
results of the shell command that fails in main.log
comment:5 Changed 14 months ago by blauvelta@…
I'm also experiencing this problem.
I attached a file that shows the results of the of the shell command that is running and failing. Its rather extensive.
I'm hoping the extra information will be helpful. This is the only port I was unable to upgrade after converting my machine from Snow Leopard to Lion.
comment:6 Changed 14 months ago by kato23@…
First of all, try building avidemux again after editing the Portfile of avidemux as shown in #26528:
# edit Portfile of avidemux - -DCMAKE_include_directories_BEFORE=ON + -DCMAKE_INCLUDE_DIRECTORIES_BEFORE=ON
A patch for the error caused by line no. 609 in dsputil_mmx.c is mplayer-devel: Fix dsputil and mp3lib inline asm:
# in line 609 of avidemux_2.5.3/avidemux/ADM_libraries/ffmpeg/libavcodec/x86/dsputil_mmx.c - "movzx (%3,%4), %2 \n" + "movzbl (%3,%4), %2 \n"
However, there may be further inline assembly issues because from Xcode 4 on Apple has switched to the llvm/clang compiler collection and clang now uses its integrated assembler (instead of the previous GNU assembler) by default on most X86 targets (see Language Compatibility: Inline assembly).
To disable the default use of clang's integrated assembler we could add to the avidemux Portfile ...
configure.cflags-append -no-integrated-as configure.cxxflags-append -no-integrated-as
... or try to switch back to the gcc compiler collection ...
sudo -H -i port -v clean --work avidemux port -f -v install avidemux +aac+dts+lame+ogg+x264+xvid configure.cc='gcc-4.2' configure.cxx='g++-4.2'
(Note: I installed avidemux @2.5.3_7+aac+dts+lame+ogg+x264+xvid on Mac OS X 10.6.8 in a custom location as described in the MacPorts Guide, 2.3.4. Install Multiple MacPorts Copies.)
comment:7 Changed 9 months ago by jmr@…
- Keywords lion added; lion, aac, LP64 removed
The error in the description is in a configure check and doesn't stop the build. The first actual error appears to be:
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_tarballs_ports_multimedia_avidemux/avidemux/work/avidemux_2.5.3/avidemux/ADM_core/src/ADM_memcpy.cpp:144: error: unsupported inline asm: input constraint with a matching output constraint of incompatible type!

