Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 460894 - sci-mathematics/coq fails to compile on ppc
Summary: sci-mathematics/coq fails to compile on ppc
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Team for the ML programming language family
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 460136 553322
  Show dependency tree
 
Reported: 2013-03-09 10:53 UTC by Agostino Sarubbo
Modified: 2015-11-12 11:43 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
coq-8.4_p1:20130309-101029.log (coq-8.4_p1:20130309-101029.log,60.31 KB, text/plain)
2013-03-09 10:53 UTC, Agostino Sarubbo
Details
build log (ocaml-3.12.1:20130309-120139.log,401.64 KB, text/plain)
2013-03-09 12:11 UTC, Agostino Sarubbo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Agostino Sarubbo gentoo-dev 2013-03-09 10:53:03 UTC
Portage 2.1.11.31 (default/linux/powerpc/ppc64/13.0/32bit-userland, gcc-4.6.3, glibc-2.15-r3, 3.2.34 ppc64)                                                                         
=================================================================                                                                                                                   
System uname: Linux-3.2.34-ppc64-POWER7_-architected-with-gentoo-2.1                                                                                                                
ld GNU ld (GNU Binutils) 2.22                                                                                                                                                       
app-shells/bash:          4.2_p37                                                                                                                                                   
dev-java/java-config:     2.1.12-r1                                                                                                                                                 
dev-lang/python:          2.7.3-r2, 3.2.3                                                                                                                                           
dev-util/cmake:           2.8.9                                                                                                                                                     
dev-util/pkgconfig:       0.28                                                                                                                                                      
sys-apps/baselayout:      2.1-r1                                                                                                                                                    
sys-apps/openrc:          0.11.8                                                                                                                                                    
sys-apps/sandbox:         2.5                                                                                                                                                       
sys-devel/autoconf:       2.13, 2.69                                                                                                                                                
sys-devel/automake:       1.11.6                                                                                                                                                    
sys-devel/binutils:       2.22-r1                                                                                                                                                   
sys-devel/gcc:            4.6.3                                                                                                                                                     
sys-devel/gcc-config:     1.7.3                                                                                                                                                     
sys-devel/libtool:        2.4-r1                                                                                                                                                    
sys-devel/make:           3.82-r4                                                                                                                                                   
sys-kernel/linux-headers: 3.6 (virtual/os-headers)                                                                                                                                  
sys-libs/glibc:           2.15-r3                                                                                                                                                   
Repositories: gentoo x-portage                                                                                                                                                      
ACCEPT_KEYWORDS="ppc"                                                                                                                                                               
ACCEPT_LICENSE="*"                                                                                                                                                                  
CBUILD="powerpc-unknown-linux-gnu"                                                                                                                                                  
CFLAGS="-O2 -pipe"                                                                                                                                                                  
CHOST="powerpc-unknown-linux-gnu"                                                                                                                                                   
CONFIG_PROTECT="/etc /usr/share/config /usr/share/gnupg/qualified.txt"                                                                                                              
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5.3/ext-active/ 
/etc/php/apache2-php5.4/ext-active/ /etc/php/cgi-php5.3/ext-active/ /etc/php/cgi-php5.4/ext-active/ /etc/php/cli-php5.3/ext-active/ /etc/php/cli-php5.4/ext-active/ 
/etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe"
DISTDIR="/usr/portage/distfiles/"
EMERGE_DEFAULT_OPTS="--with-bdeps y --keep-going y -1"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-logs collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch protect-owned sandbox 
sfperms split-log strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://gentoo.osuosl.org/"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu"
MAKEOPTS="-j30"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles 
--exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://bobolink.gentoo.osuosl.org/gentoo-portage"
USE="X acl berkdb bzip2 cli consolekit cracklib crypt cxx dbus dri fontconfig fortran gcc64 gdbm gpm gudev hwdb iconv ipv6 jpeg kde minizip modules mudflap ncurses nls nptl 
ogg opengl openmp pam pcre png policykit ppc qt3support qt4 readline semantic-desktop session ssl tcpd unicode vorbis zlib" ALSA_CARDS="aoa aoa-fabric-layout aoa-onyx 
aoa-soundbus aoa-soundbus-i2s aoa-tas aoa-toonie powermac usb-audio via82xx" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 
ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" 
LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="am fil zh af ca cs da de el es et gl hu nb nl pl pt ro ru sk sl sv uk bg cy en eo fo ga he id ku lt 
lv mk ms nn sw tn zu ja zh_TW en_GB pt_BR ko zh_CN ar en_CA fi kk oc sr tr fa wa nds as be bn bn_BD bn_IN en_US es_AR es_CL es_ES es_MX eu fy fy_NL ga_IE gu gu_IN hi hi_IN 
is ka kn ml mr nn_NO or pa pa_IN pt_PT rm si sq sv_SE ta ta_LK te th vi ast dz km my om sh ug uz ca@valencia sr@ijekavian sr@ijekavianlatin sr@latin csb hne mai se es_LA 
fr_CA zh_HK br la no es_CR et_EE sr_CS bo hsb hy mn sr@Latn lb ne bs tg uz@cyrillic xh be_BY brx ca_XV dgo en_ZA gd kok ks ky lo mni nr ns pap ps rw sa_IN sat sd ss st 
sw_TZ ti ts ve mt ia az me tl ak hy_AM lg nso son ur_PK it fr nb nb_NO hr nan ur tk cs_CZ da_DK de_1901 de_CH en_AU lt_LT pl_PL sa sk_SK th_TH ta_IN tt sco ha mi ven ar_SY 
el_GR ro_RO ru_RU sl_SI uk_UA vi_VN ar_SY te_IN de_DE es_VE fa_IR fr_FR hu_HU id_ID it_IT ja_JP ka_GE nl_NL sr_BA sr_RS ca_ES fi_FI he_IL jv ru_gold yi eu_ES" 
PHP_TARGETS="php5-3 php5-4" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_2" RUBY_TARGETS="ruby18 ruby19" USERLAND="GNU" VIDEO_CARDS="fbdev glint 
mach64 mga nv r128 radeon savage tdfx trident dummy v4l"
USE_PYTHON="2.7 3.2"
Comment 1 Agostino Sarubbo gentoo-dev 2013-03-09 10:53:11 UTC
Created attachment 341394 [details]
coq-8.4_p1:20130309-101029.log

build log
Comment 2 Alexis Ballier gentoo-dev 2013-03-09 11:26:36 UTC
do you have /usr/lib/ocaml/dynlink.cmxa ?

what dev-lang/ocaml version ?
what's the output of 'ls /usr/lib/ocaml/dynlink.*' ?
Comment 3 Alexis Ballier gentoo-dev 2013-03-09 11:27:30 UTC
(In reply to comment #0)
> Portage 2.1.11.31 (default/linux/powerpc/ppc64/13.0/32bit-userland,
> gcc-4.6.3, glibc-2.15-r3, 3.2.34 ppc64)                                     

hmm wait, did you build dev-lang/ocaml with ocamlopt useflag on?
Comment 4 Agostino Sarubbo gentoo-dev 2013-03-09 11:32:37 UTC
(In reply to comment #3)
> (In reply to comment #0)
> > Portage 2.1.11.31 (default/linux/powerpc/ppc64/13.0/32bit-userland,
> > gcc-4.6.3, glibc-2.15-r3, 3.2.34 ppc64)                                     
> 
> hmm wait, did you build dev-lang/ocaml with ocamlopt useflag on?

yes.


(In reply to comment #2)
> do you have /usr/lib/ocaml/dynlink.cmxa ?
No

> what dev-lang/ocaml version ?
3.12.1

> what's the output of 'ls /usr/lib/ocaml/dynlink.*' ?

ls /usr/lib/ocaml/dynlink.* -l
-rw-r--r-- 1 root root 140659 Mar  9 11:06 /usr/lib/ocaml/dynlink.cma
-rw-r--r-- 1 root root   1792 Mar  9 11:06 /usr/lib/ocaml/dynlink.cmi
-rw-r--r-- 1 root root   6119 Mar  9 11:06 /usr/lib/ocaml/dynlink.mli
Comment 5 Alexis Ballier gentoo-dev 2013-03-09 11:39:26 UTC
does you ocaml installation has any cmxa file ?
( equery files dev-lang/ocaml | grep cmxa )
Comment 6 Agostino Sarubbo gentoo-dev 2013-03-09 11:42:41 UTC
(In reply to comment #5)
> does you ocaml installation has any cmxa file ?
> ( equery files dev-lang/ocaml | grep cmxa )

yes
/usr/lib/ocaml/bigarray.cmxa
/usr/lib/ocaml/camlp4/camlp4fulllib.cmxa
/usr/lib/ocaml/camlp4/camlp4lib.cmxa
/usr/lib/ocaml/dbm.cmxa
/usr/lib/ocaml/graphics.cmxa
/usr/lib/ocaml/nums.cmxa
/usr/lib/ocaml/ocamlbuild/ocamlbuildlib.cmxa
/usr/lib/ocaml/ocamldoc/odoc_info.cmxa
/usr/lib/ocaml/stdlib.cmxa
/usr/lib/ocaml/stdlib.p.cmxa
/usr/lib/ocaml/str.cmxa
/usr/lib/ocaml/threads/threads.cmxa
/usr/lib/ocaml/unix.cmxa
Comment 7 Alexis Ballier gentoo-dev 2013-03-09 11:51:15 UTC
ok, so this is likely an ocaml problem not coq.
what do you get as ocaml-3.12.1 configure output?

esp. this line:
Additional libraries supported:
        unix str num dynlink bigarray systhreads threads graph dbm


Can you attach your dev-lang/ocaml build log?
Comment 8 Alexis Ballier gentoo-dev 2013-03-09 11:53:22 UTC
also, do you get dynlink.cmxa with ocaml-4.00.1-r1 ?
Comment 9 Agostino Sarubbo gentoo-dev 2013-03-09 12:11:50 UTC
Created attachment 341412 [details]
build log
Comment 10 Agostino Sarubbo gentoo-dev 2013-03-09 12:21:44 UTC
(In reply to comment #8)
> also, do you get dynlink.cmxa with ocaml-4.00.1-r1 ?

yes, and also there are:

 * QA Notice: dosym target omits basename: '/usr/include/'                                                                                                                          
 * OCaml is not binary compatible from version to version, so you                                                                                                                   
 * need to rebuild all packages depending on it, that are actually                                                                                                                  
 * installed on your system. To do so, you can run:                                                                                                                                 
 * emerge -1 /usr/lib/ocaml                                                                                                                                                         
 * QA Notice: The following files contain runtime text relocations                                                                                                                  
 *  Text relocations force the dynamic linker to perform extra                                                                                                                      
 *  work at startup, waste system resources, and may pose a security                                                                                                                
 *  risk.  On some architectures, the code may not even function                                                                                                                    
 *  properly, if at all.                                                                                                                                                            
 *  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml                                                                                                          
 *  Please include the following list of files in your report:                                                                                                                      
 * TEXTREL usr/lib/ocaml/graphics.cmxs                                                                                                                                              
 * TEXTREL usr/lib/ocaml/unix.cmxs                                                                                                                                                  
 * TEXTREL usr/lib/ocaml/str.cmxs                                                                                                                                                   
 * TEXTREL usr/lib/ocaml/nums.cmxs                                                                                                                                                  
 * TEXTREL usr/lib/ocaml/bigarray.cmxs
Comment 11 Alexis Ballier gentoo-dev 2013-03-09 14:14:12 UTC
(In reply to comment #10)
> (In reply to comment #8)
> > also, do you get dynlink.cmxa with ocaml-4.00.1-r1 ?
> 
> yes

good

>, and also there are:
> 
>  * QA Notice: dosym target omits basename: '/usr/include/'

where does this come from???
                  

>  * OCaml is not binary compatible from version to version, so you           
> 
>  * need to rebuild all packages depending on it, that are actually          
> 
>  * installed on your system. To do so, you can run:                         
> 
>  * emerge -1 /usr/lib/ocaml                                                 

this is normal

>  * QA Notice: The following files contain runtime text relocations          
> 
>  *  Text relocations force the dynamic linker to perform extra              
> 
>  *  work at startup, waste system resources, and may pose a security        
> 
>  *  risk.  On some architectures, the code may not even function            
> 
>  *  properly, if at all.                                                    
> 
>  *  For more information, see http://hardened.gentoo.org/pic-fix-guide.xml  
> 
>  *  Please include the following list of files in your report:              
> 
>  * TEXTREL usr/lib/ocaml/graphics.cmxs                                      
> 
>  * TEXTREL usr/lib/ocaml/unix.cmxs                                          
> 
>  * TEXTREL usr/lib/ocaml/str.cmxs                                           
> 
>  * TEXTREL usr/lib/ocaml/nums.cmxs                                          
> 
>  * TEXTREL usr/lib/ocaml/bigarray.cmxs

this has to be expected, I think ocaml cannot not generate PIC code for ppc unfortunately
Comment 12 Alexis Ballier gentoo-dev 2013-03-09 14:19:29 UTC
so, we are now at:
1) patch ocaml-3.12.1 to allow natdynlink on ppc, this will be unsupported upstream and may trigger some bugs (and will trigger those textrel anyway if it works at all)
2) stabilize ocaml-4.00.1-r1 on ppc: this seems the sanest way, but this coq stablereq bug was to allow stabilizing a new camlp5 which in turn allows stabilizing ocaml-4...

so what I would suggest if you are fine with that:
stabilize coq-8.4_p1, dev-ml/camlp5-6.07_p1 and dev-lang/ocaml-4.00.1-r1 on ppc at the same time; of course if that setup works. The other ocaml packages _should_ be fine, thanks to the automated stablereq we are regularly moving our packages to stable.
Comment 13 Alexis Ballier gentoo-dev 2013-03-09 14:22:27 UTC
if that setup doesn't work, another option would be to use.mask coq[ocamlopt] but coq will become veeeeeeeery slow...
Comment 14 Alexis Ballier gentoo-dev 2013-03-10 10:30:10 UTC
now that I'm think about it, maybe an intermediate solution for coq could be to disable natdynlink usage on ppc there: could you please try if feeding coq's configure with '-natdynlink no' helps?
Comment 15 Justin Lecher (RETIRED) gentoo-dev 2015-11-11 10:51:44 UTC
could this be fixed please?
Comment 16 Alexis Ballier gentoo-dev 2015-11-11 11:35:21 UTC
(In reply to Justin Lecher from comment #15)
> could this be fixed please?

there's nothing to fix, it has been waiting so long that ocaml 4.02.3 is going stable...
Comment 17 Agostino Sarubbo gentoo-dev 2015-11-12 11:43:00 UTC
It works now.