Opened 14 years ago

Closed 14 years ago

#25730 closed defect (worksforme)

mlt-0.5.6- build error

Reported by: julpub@… Owned by: ddennedy (Dan Dennedy)
Priority: Normal Milestone:
Component: ports Version: 1.9.1
Keywords: Cc: hobbsilla
Port: mlt

Description

Hi, I am new to MacPort.

I have an issue building mlt. I do not understand the log. I have pass the ffmpeg issue, activating ffmpeg-devel.
Any help would be appreciated. If I have to supply other details, let me know.

Mac OS X : 10.6.4
XCode : 3.2.3

version:1
:debug:main Executing org.macports.main (mlt)
:debug:main Skipping completed org.macports.fetch (mlt)
:debug:main Skipping completed org.macports.checksum (mlt)
:debug:main Skipping completed org.macports.extract (mlt)
:debug:main Skipping completed org.macports.patch (mlt)
:debug:main Skipping completed org.macports.configure (mlt)
:msg:main --->  Building mlt
:debug:build build phase started at Sun Jul 18 17:57:14 CEST 2010
:debug:build Executing org.macports.build (mlt)
:debug:build Environment: CPATH='/opt/local/include' CC_PRINT_OPTIONS_FILE='/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/work/.CC_PRINT_OPTIONS' CFLAGS='-O2 -I/opt/local/include -I/opt/local/libexec/qt4-mac/include' LIBRARY_PATH='/opt/local/lib' CC_PRINT_OPTIONS='YES' MACOSX_DEPLOYMENT_TARGET='10.6' LDFLAGS='-L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/work/mlt/src/framework -L/opt/local/lib'
:debug:build Assembled command: 'cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/work/mlt" && /usr/bin/make -j2 all CC="/usr/bin/gcc-4.2" CXX="/usr/bin/g++-4.2" CPP="/usr/bin/cpp-4.2"'
:info:build list='src/framework src/mlt++ src/melt src/modules src/swig profiles'; \
:info:build 	for subdir in $list; do \
:info:build 		/usr/bin/make -s -C $subdir depend || exit 1; \
:info:build 		/usr/bin/make -C $subdir all || exit 1; \
:info:build 	done
:info:build make[1]: Nothing to be done for `all'.
:info:build make[1]: Nothing to be done for `all'.
:info:build make[1]: Nothing to be done for `all'.
:info:build list='avformat core dgraft dv effectv feeds frei0r gtk2 jackrack kdenlive kino linsys lumas melt motion_est normalize oldfilm plus qimage resample sdl sox vmfx vorbis xine xml'; \
:info:build 	for subdir in $list; do \
:info:build 		if [ -f $subdir/Makefile -a ! -f disable-$subdir ] ; \
:info:build 		then /usr/bin/make -C $subdir all || exit 1; \
:info:build 		fi \
:info:build 	done
:info:build /usr/bin/gcc-4.2 -dynamiclib -o ../libmltavformat.dylib factory.o filter_avcolour_space.o filter_avresample.o filter_avdeinterlace.o producer_avformat.o consumer_avformat.o -L/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/work/mlt/src/framework -L/opt/local/lib -L/opt/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -L/opt/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -L../../framework -lmlt -lpthread -L/opt/local/lib -lSDLmain -lSDL -Wl,-framework,Cocoa -L/opt/local/lib   -L/opt/local/lib   -lavformat -lavcodec -lavutil  -lavdevice
:info:build Undefined symbols:
:info:build   "_img_convert", referenced from:
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _producer_get_image in producer_avformat.o
:info:build       _consumer_thread in consumer_avformat.o
:info:build ld: symbol(s) not found
:info:build collect2: ld returned 1 exit status
:info:build make[2]: *** [../libmltavformat.dylib] Error 1
:info:build make[1]: *** [all] Error 1
:info:build make: *** [all] Error 1
:info:build shell command " cd "/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/work/mlt" && /usr/bin/make -j2 all CC="/usr/bin/gcc-4.2" CXX="/usr/bin/g++-4.2" CPP="/usr/bin/cpp-4.2" " returned error 2
:error:build Target org.macports.build returned: shell command failed
:debug:build Backtrace: shell command failed
    while executing
"command_exec build"
    (procedure "portbuild::build_main" line 8)
    invoked from within
"$procedure $targetname"
:info:build Warning: the following items did not execute (for mlt): org.macports.activate org.macports.build org.macports.destroot org.macports.install
:notice:build Log for mlt is at: /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_release_ports_multimedia_mlt/main.log

Change History (14)

comment:1 Changed 14 years ago by jmroot (Joshua Root)

Owner: changed from macports-tickets@… to dan@…

Please remember to cc the maintainer.

comment:2 in reply to:  1 ; Changed 14 years ago by julpub@…

Replying to jmr@…:

Please remember to cc the maintainer.

oups, Sorry. How to find the maintainer's email for a given port ?

comment:3 in reply to:  2 Changed 14 years ago by julpub@…

Replying to julpub@…:

Replying to jmr@…:

Please remember to cc the maintainer.

oups, Sorry. How to find the maintainer's email for a given port ?

ok, I have found how to know the maintainer, sorry again.

comment:4 Changed 14 years ago by julpub@…

Cc: julpub@… added

Cc Me!

comment:5 Changed 14 years ago by ddennedy (Dan Dennedy)

I think this should only happen if you have an old version of ffmpeg installed - perhaps one not from macports.

The MLT configure script uses the output of 'pkg-config --modversion libavcodec' to determine whether to use the old img_convert or the current swscale API. The img_convert API was removed in 2009, but I keep some old compatibility around for some commercial users. Run that command in a terminal and report the result here. It should be >= 52.21.0. If not, then you probably have more than one copy of ffmpeg installed on your system.

comment:6 in reply to:  5 Changed 14 years ago by julpub@…

Hi,

I have executed "pkg-config --modversion libavcodec" command, it returns "52.66.0". Does it mean I have a too recent version ?

a "port installed" returns "ffmpeg-devel @22866_0 (active)" but no ffmpeg installed.

How can I know if I have another copy of ffmpeg installed ? May it comes from 3rd Party software that I have installed, out of MacPort scope ?

Thanks in advance

comment:7 Changed 14 years ago by ddennedy (Dan Dennedy)

52.66.0 is fine. That is what I am using too. So, it should be working regardless if there is another ffmpeg installed. Locating another installed ffmpeg can be a bit complicated - it basically amounts to searching your disks for some files. Let's skip that for now. I see something from your log that is a very reasonable explanation: ":debug:main Skipping completed org.macports.configure (mlt)"

Basically, the mlt package configure step was executed when just the 'ffmpeg' package was active instead of 'ffmpeg-devel' and on this build it is skipping build steps already completed. I think the -f option to the port command will take care of installing it by restarting the process (not all dependencies, just mlt): port -f install mlt

comment:8 Changed 14 years ago by ddennedy (Dan Dennedy)

forgive me; I am not a port expert. Now I am thinking if -f does not work, then perhaps a 'port clean mlt' will reset the state of that package.

comment:9 in reply to:  8 Changed 14 years ago by julpub@…

doing the port -f does not succeed, but the clean does the work. I have it installed !

Thanks a lot for your help.

comment:10 Changed 14 years ago by hobbsilla

Cc: hobbsilla@… added

Cc Me!

comment:11 in reply to:  5 ; Changed 14 years ago by hobbsilla

Replying to dan@…:

I think this should only happen if you have an old version of ffmpeg installed - perhaps one not from macports.

Run that command in a terminal and report the result here. It should be >= 52.21.0. If not, then you probably have more than one copy of ffmpeg installed on your system.

How do I update this libavcodec? I have 52.20.0 and want the most up to date one.

comment:12 in reply to:  11 Changed 14 years ago by ddennedy (Dan Dennedy)

Replying to hobbsilla@…:

Replying to dan@…:

I think this should only happen if you have an old version of ffmpeg installed - perhaps one not from macports.

Run that command in a terminal and report the result here. It should be >= 52.21.0. If not, then you probably have more than one copy of ffmpeg installed on your system.

How do I update this libavcodec? I have 52.20.0 and want the most up to date one.

RTFM sudo port sync sudo port upgrade ffmpeg-devel

comment:13 Changed 14 years ago by ddennedy (Dan Dennedy)

Dear macports.org maintainers, please close this ticket as resolved - no change, simply via process.

comment:14 Changed 14 years ago by mf2k (Frank Schima)

Cc: julpub@… removed
Resolution: worksforme
Status: newclosed
Note: See TracTickets for help on using tickets.