Alexpux / Qt-builds

Scripts for building Qt-5.x
48 stars 16 forks source link

Ruby building error #18

Closed FraDiavolo7 closed 11 years ago

FraDiavolo7 commented 11 years ago

Trying to build QT x64 on a Win7 x64, using MSYS rev10.

During script process, an error occurs in the ruby part : -> ruby ---> downloaded ---> unpacked --> Empty ---> configured --> building......error 2!

And the log file opened states : generating id.c compiling ../../unpack/ruby-2.0.0-p0/re.c compiling ../../unpack/ruby-2.0.0-p0/regcomp.c executable host ruby is required. use --with-baseruby option. uncommon.mk:877: recipe for target `id.c' failed make: * [id.c] Error 1 make: * Waiting for unfinished jobs....

I tryed adding the option in different places, no changes at all.

So before trying installing ruby, I post here.

Is there a known solution? Have I failed to find the correct spot for the option? Is there another option to set?

Alexpux commented 11 years ago

I build ruby 32-bit and 64-bit today without any problems. Try to remove folder /qt-builds/work/build-x{32,64}/ruby-2.0.0-p0 and start building again. Maybe it MSYS crash, it sometimes happen. What toolchain do you use?

FraDiavolo7 commented 11 years ago

Tryed again, first by removing ruby from work/build-x64, then by removing unpack/ruby (and its marker), and another one by removing also the downloaded ruby (and its marker). Nothing goes.

Something is a bit different from what I stated previously. Not all the compilation seems to be failling, here is the ruby build log : CC = x86_64-w64-mingw32-gcc LD = ld LDSHARED = x86_64-w64-mingw32-gcc -shared CFLAGS = -march=nocona -mtune=core2 -pipe -O2 -finline-functions XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=2048 -Ic:/QtSDK/ported64/include -Ic:/QtSDK/ported64/include/ncurses -D_WIN32_WINNT=0x0501 -I. -I.ext/include/x64-mingw32 -I../../unpack/ruby-2.0.0-p0/include -I../../unpack/ruby-2.0.0-p0 DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libx64-msvcrt-ruby200.dll.a x64-msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import
SOLIBS = x64-msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp -lshlwapi
compiling ../../unpack/ruby-2.0.0-p0/main.c compiling ../../unpack/ruby-2.0.0-p0/dmydln.c compiling ../../unpack/ruby-2.0.0-p0/dmyencoding.c compiling ../../unpack/ruby-2.0.0-p0/version.c compiling ../../unpack/ruby-2.0.0-p0/miniprelude.c copying dummy probes.h compiling ../../unpack/ruby-2.0.0-p0/bignum.c compiling ../../unpack/ruby-2.0.0-p0/class.c compiling ../../unpack/ruby-2.0.0-p0/compar.c compiling ../../unpack/ruby-2.0.0-p0/complex.c compiling ../../unpack/ruby-2.0.0-p0/dir.c compiling ../../unpack/ruby-2.0.0-p0/dln_find.c compiling ../../unpack/ruby-2.0.0-p0/enum.c compiling ../../unpack/ruby-2.0.0-p0/enumerator.c compiling ../../unpack/ruby-2.0.0-p0/error.c compiling ../../unpack/ruby-2.0.0-p0/eval.c compiling ../../unpack/ruby-2.0.0-p0/load.c compiling ../../unpack/ruby-2.0.0-p0/proc.c compiling ../../unpack/ruby-2.0.0-p0/file.c compiling ../../unpack/ruby-2.0.0-p0/gc.c compiling ../../unpack/ruby-2.0.0-p0/hash.c compiling ../../unpack/ruby-2.0.0-p0/inits.c compiling ../../unpack/ruby-2.0.0-p0/io.c compiling ../../unpack/ruby-2.0.0-p0/marshal.c compiling ../../unpack/ruby-2.0.0-p0/math.c compiling ../../unpack/ruby-2.0.0-p0/node.c compiling ../../unpack/ruby-2.0.0-p0/numeric.c compiling ../../unpack/ruby-2.0.0-p0/object.c compiling ../../unpack/ruby-2.0.0-p0/pack.c copying lex.c generating id.c compiling ../../unpack/ruby-2.0.0-p0/process.c executable host ruby is required. use --with-baseruby option. uncommon.mk:877: recipe for target `id.c' failed make: * [id.c] Error 1 make: * Waiting for unfinished jobs....

So it seems that just generation of id.c is failing.

To answer your question, as it is my first attempt, I build with all default settings. Nothing but a clean environment straightly downloaded from you Git rep, and following the procedure on your GitHub page : https://github.com/Alexpux/Qt-builds

Alexpux commented 11 years ago

Ok. Try next:

FraDiavolo7 commented 11 years ago

There seem to be no change : CC = x86_64-w64-mingw32-gcc LD = ld LDSHARED = x86_64-w64-mingw32-gcc -shared CFLAGS = -march=nocona -mtune=core2 -pipe -O2 -finline-functions XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -DFD_SETSIZE=2048 -Ic:/QtSDK/ported64/include -Ic:/QtSDK/ported64/include/ncurses -D_WIN32_WINNT=0x0501 -I. -I.ext/include/x64-mingw32 -I../../unpack/ruby-2.0.0-p0/include -I../../unpack/ruby-2.0.0-p0 DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libx64-msvcrt-ruby200.dll.a x64-msvcrt-ruby200.def -Wl,--stack,0x00200000,--enable-auto-import
SOLIBS = x64-msvcrt-ruby200.res.o -lshell32 -lws2_32 -limagehlp -lshlwapi
compiling ../../unpack/ruby-2.0.0-p0/main.c compiling ../../unpack/ruby-2.0.0-p0/dmydln.c compiling ../../unpack/ruby-2.0.0-p0/dmyencoding.c compiling ../../unpack/ruby-2.0.0-p0/version.c compiling ../../unpack/ruby-2.0.0-p0/dmyversion.c compiling ../../unpack/ruby-2.0.0-p0/miniprelude.c copying dummy probes.h compiling ../../unpack/ruby-2.0.0-p0/array.c compiling ../../unpack/ruby-2.0.0-p0/bignum.c compiling ../../unpack/ruby-2.0.0-p0/class.c compiling ../../unpack/ruby-2.0.0-p0/compar.c compiling ../../unpack/ruby-2.0.0-p0/complex.c compiling ../../unpack/ruby-2.0.0-p0/dir.c compiling ../../unpack/ruby-2.0.0-p0/dln_find.c compiling ../../unpack/ruby-2.0.0-p0/enum.c compiling ../../unpack/ruby-2.0.0-p0/enumerator.c compiling ../../unpack/ruby-2.0.0-p0/error.c compiling ../../unpack/ruby-2.0.0-p0/eval.c compiling ../../unpack/ruby-2.0.0-p0/load.c compiling ../../unpack/ruby-2.0.0-p0/proc.c compiling ../../unpack/ruby-2.0.0-p0/file.c compiling ../../unpack/ruby-2.0.0-p0/gc.c compiling ../../unpack/ruby-2.0.0-p0/hash.c compiling ../../unpack/ruby-2.0.0-p0/inits.c compiling ../../unpack/ruby-2.0.0-p0/io.c compiling ../../unpack/ruby-2.0.0-p0/marshal.c compiling ../../unpack/ruby-2.0.0-p0/math.c compiling ../../unpack/ruby-2.0.0-p0/node.c compiling ../../unpack/ruby-2.0.0-p0/numeric.c compiling ../../unpack/ruby-2.0.0-p0/object.c compiling ../../unpack/ruby-2.0.0-p0/pack.c copying lex.c generating id.c executable host ruby is required. use --with-baseruby option. uncommon.mk:877: recipe for target `id.c' failed make: *\ [id.c] Error 1

Here are the change made in case I was not accurate : pkg_build() { local _make_flags=( -j1 ) local _allmake="${_make_flags[@]}" func_make \ ${P_V} \ "/bin/make" \ "$_allmake" \ "building..." \ "built" }

Alexpux commented 11 years ago

Look at my build log at http://pastebin.com/zsR52JFE. I don't see any "generating id.c"

Alexpux commented 11 years ago

Also look at http://bugs.ruby-lang.org/issues/3008. Problem are the same I think

FraDiavolo7 commented 11 years ago

Ok, it's past the ruby part \o/

The correction made are dirty but working, didn't take the time to do it clean and shiny :s in the ruby.sh scenario :

added WorkDir=work/unpack/$P_V under DEPENDS=()

added touch $WorkDir/.revision.time
touch $WorkDir/ChangeLog
touch $WorkDir/configure
touch $WorkDir/enc/trans/big5.c
touch $WorkDir/enc/trans/chinese.c
touch $WorkDir/enc/trans/escape.c
touch $WorkDir/enc/trans/gb18030.c
touch $WorkDir/enc/trans/gbk.c
touch $WorkDir/enc/trans/iso2022.c
touch $WorkDir/enc/trans/japanese.c
touch $WorkDir/enc/trans/japanese_euc.c
touch $WorkDir/enc/trans/japanese_sjis.c
touch $WorkDir/enc/trans/korean.c
touch $WorkDir/enc/trans/newline.c
touch $WorkDir/enc/trans/single_byte.c
touch $WorkDir/enc/trans/utf_16_32.c
touch $WorkDir/encdb.h
touch $WorkDir/ext/ripper/eventids1.c
touch $WorkDir/ext/ripper/eventids2table.c
touch $WorkDir/ext/ripper/ripper.c
touch $WorkDir/ext/ripper/ripper.y
touch $WorkDir/ext/ripper/y.output
touch $WorkDir/golf_prelude.c
touch $WorkDir/insns.inc
touch $WorkDir/insns_info.inc
touch $WorkDir/known_errors.inc
touch $WorkDir/lex.c
touch $WorkDir/miniprelude.c
touch $WorkDir/newline.c
touch $WorkDir/node_name.inc touch $WorkDir/opt_sc.inc
touch $WorkDir/optinsn.inc
touch $WorkDir/optunifs.inc touch $WorkDir/parse.c
touch $WorkDir/parse.h
touch $WorkDir/revision.h
touch $WorkDir/string.c
touch $WorkDir/transdb.h
touch $WorkDir/version.h
touch $WorkDir/vm.inc
touch $WorkDir/vmtc.inc
touch $WorkDir/id.c

before func_configure $P_V $P_V "$_allconf" in the src_configure function

Thanks for your time and help

Alexpux commented 11 years ago

Do you use GCC-4.8.0 toolchain or GCC-4.7.2 toolchain?

FraDiavolo7 commented 11 years ago

It seems 4.8.0, no other toolchain are installed, and as I did not specified anything, looks like the default feature...

Alexpux commented 11 years ago

To solve this problem replace /bin/tar with tar from msys-rev9 and delete all ruby folders. Then restart build

Alexpux commented 11 years ago

Uploaded http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/msys%2B7za%2Bwget%2Bsvn%2Bgit%2Bmercurial%2Bcvs-rev11.7z/download with reverted tar to 1.23. It solve problem with ruby.