Hi, On Fri, Sep 14, 2012 at 12:09 AM, Einar Rünkaru <[email protected]> wrote: > Hi > > Thank you for the patch. > > But a couple of days ago I sent a similar patch to the ML > (http://article.gmane.org/gmane.comp.video.cinelerra-cv.general/13752)
Oh ok. Nice. > On Thu, Sep 13, 2012 at 10:38 AM, Jehan Pagès > <[email protected]> wrote: >> Hi, >> >> the nasm assembly compiler is apparently mandatory for cinderella >> compilation. >> It seems that normally this can be advantageously replaced by the C > > No it is impossible. nasm and gcc have different syntax I only said this because I checked the generated "configure" script and noticed it would use the C compiler (often GCC on GNU operating systems, but may differ) by default, unless already set by user input (environment variable). Cf. the generated `configure` script (and also a `configure --help |grep CCAS`): # By default we simply use the C compiler to build assembly code. test "${CCAS+set}" = set || CCAS=$CC So I figured that most C compilers (so maybe GCC too? No idea) probably detect assembler code and would compile it as well. But other than this, I don't know. Last time I had to compile assembler, that was at university, years ago. :p >> compiler (probably a default choice of the autotools?) but that >> behaviour has been apparently overwritten by Cinelerra developers to >> force using the nasm compiler for .s files only. >> >> See the perl script admin/nasm and configure.in line 30: >> ------------------------------ >> # hack for using nasm for .S files >> CCAS="\$(top_srcdir)/admin/nasm" >> AC_SUBST(CCAS) >> AC_SUBST(CCASFLAGS) >> ------------------------------ >> >> I am not questioning this, I have no idea of the reason and if it is >> still valid, but I guess there was one. Simply it makes that nasm is >> mandatory for compiling cinderella as there are assembly files in >> mpeg2enc/ and libmpeg3/ (not seen any option for these to be >> optional?). But the configure script would still pass with success, >> yet the compilation would fail. >> >> ------------------------------ >> [...] >> /bin/sh ../libtool --tag=CC --mode=compile ../admin/nasm -g -O2 -c >> -o predcomp_mmxe.lo predcomp_mmxe.s >> libtool: compile: ../admin/nasm -g -O2 -c predcomp_mmxe.s -fPIC >> -DPIC -o .libs/predcomp_mmxe.o >> \1 better written as $1 at ../admin/nasm line 12. >> nasm -felf predcomp_mmxe.s -o .libs/predcomp_mmxe.o >> Can't exec "nasm": No such file or directory at ../admin/nasm line 24. >> /bin/sh ../libtool --tag=CC --mode=compile ../admin/nasm -g -O2 -c >> -o predcomp_mmx.lo predcomp_mmx.s >> libtool: compile: ../admin/nasm -g -O2 -c predcomp_mmx.s -fPIC -DPIC >> -o .libs/predcomp_mmx.o >> \1 better written as $1 at ../admin/nasm line 12. >> nasm -felf predcomp_mmx.s -o .libs/predcomp_mmx.o >> Can't exec "nasm": No such file or directory at ../admin/nasm line 24. >> /bin/sh ../libtool --tag=CC --tag=CC --mode=link gcc >> -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -g >> -O2 -o libmpeg2enc.la conform.lo mpeg2enc.lo putseq.lo putpic.lo >> puthdr.lo putmpg.lo putvlc.lo putbits.lo predict.lo readpic.lo >> writepic.lo transfrm.lo fdctref.lo idct.lo quantize.lo ratectl.lo >> stats.lo motion.lo cpu_accel.lo fdct_mmx.lo fdctdata.lo idct_mmx.lo >> idctdata.lo quant_mmx.lo quantize_x86.lo predict_mmx.lo >> predcomp_mmxe.lo predcomp_mmx.lo -lm -ldl -lpthread >> libtool: link: ar cru .libs/libmpeg2enc.a .libs/conform.o >> .libs/mpeg2enc.o .libs/putseq.o .libs/putpic.o .libs/puthdr.o >> .libs/putmpg.o .libs/putvlc.o .libs/putbits.o .libs/predict.o >> .libs/readpic.o .libs/writepic.o .libs/transfrm.o .libs/fdctref.o >> .libs/idct.o .libs/quantize.o .libs/ratectl.o .libs/stats.o >> .libs/motion.o .libs/cpu_accel.o .libs/fdct_mmx.o .libs/fdctdata.o >> .libs/idct_mmx.o .libs/idctdata.o .libs/quant_mmx.o >> .libs/quantize_x86.o .libs/predict_mmx.o .libs/predcomp_mmxe.o >> .libs/predcomp_mmx.o >> ar: .libs/fdct_mmx.o: No such file or directory >> make[2]: *** [libmpeg2enc.la] Erreur 1 >> [...] >> ------------------------------ > > The reason here is that you have tried to compile cinelerra without > nasm. From this point make can't continue. You have to make clean > before remake Yes I figured this when my make failed after installing nasm. Hence my (duplicate unfortunately) patch. :-) Thanks anyway! Jehan > Einar _______________________________________________ Cinelerra mailing list [email protected] https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra
