Re: [Haskell-cafe] HPC and Template Haskell (GHC 7.8.3, Yesod)

Ok, I can reproduce this with a bare Yesod scaffold (using the latest
cabal-install) - see below.
If I run cabal build a couple more times, it completes successfully,
which is mighty strange!
[linuxadmin@vm01 20:19:43 ~ ]
$ yesod init
Welcome to the Yesod scaffolder.
I'm going to be creating a skeleton Yesod project for you.
What do you want to call your project? We'll use this for the cabal name.
Project name: linker-test
Yesod uses Persistent for its (you guessed it) persistence layer.
This tool will build in either SQLite or PostgreSQL or MongoDB support for you.
We recommend starting with SQLite: it has no dependencies.
s = sqlite
p = postgresql
pf = postgresql + Fay (experimental)
mongo = mongodb
mysql = MySQL
simple = no database, no auth
url = Let me specify URL containing a site (advanced)
So, what'll it be? simple
That's it! I'm creating your files now...
---------------------------------------
___
{-) |\
[m,].-"-. /
[][__][__] \(/\__/\)/
[__][__][__][__]~~~~ | |
[][__][__][__][__][] / |
[__][__][__][__][__]| /| |
[][__][__][__][__][]| || | ~~~~
ejm [__][__][__][__][__]__,__, \__/
---------------------------------------
The foundation for your web application has been built.
There are a lot of resources to help you use Yesod.
Start with the book: http://www.yesodweb.com/book
Take part in the community: http://yesodweb.com/page/community
It's highly recommended to follow the quick start guide for
installing Yesod: http://www.yesodweb.com/page/quickstart
If your system is already configured correctly, please run:
cd linker-test && cabal install -j --enable-tests
--max-backjumps=-1 --reorder-goals && yesod devel
[linuxadmin@vm01 20:20:07 ~ ]
$ cd linker-test
[linuxadmin@vm01 20:20:11 ~/linker-test ]
$ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure
--disable-tests --enable-coverage --disable-profiling
Resolving dependencies...
Configuring linker-test-0.0.0...
[linuxadmin@vm01 20:20:25 ~/linker-test ]
$ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build
Building linker-test-0.0.0...
Preprocessing library linker-test-0.0.0...
[1 of 7] Compiling Settings.Development ( Settings/Development.hs,
dist/build/Settings/Development.o )
[2 of 7] Compiling Settings ( Settings.hs, dist/build/Settings.o )
Loading package ghc-prim ... linking ... done.
Loading package integer-gmp ... linking ... done.
Loading package base ... linking ... done.
Loading package array-0.5.0.0 ... linking ... done.
Loading package stm-2.4.3 ... linking ... done.
Loading package async-2.0.1.6 ... linking ... done.
Loading package deepseq-1.3.0.2 ... linking ... done.
Loading package bytestring-0.10.4.0 ... linking ... done.
Loading package containers-0.5.5.1 ... linking ... done.
Loading package text-1.1.1.3 ... linking ... done.
Loading package hashable-1.2.2.0 ... linking ... done.
Loading package scientific-0.3.3.2 ... linking ... done.
Loading package attoparsec-0.12.1.2 ... linking ... done.
Loading package base64-bytestring-1.0.0.1 ... linking ... done.
Loading package blaze-builder-0.3.3.4 ... linking ... done.
Loading package byteable-0.1.1 ... linking ... done.
Loading package transformers-0.3.0.0 ... linking ... done.
Loading package mtl-2.1.3.1 ... linking ... done.
Loading package exceptions-0.6.1 ... linking ... done.
Loading package base-unicode-symbols-0.2.2.4 ... linking ... done.
Loading package transformers-base-0.4.3 ... linking ... done.
Loading package monad-control-0.3.3.0 ... linking ... done.
Loading package lifted-base-0.2.2.1 ... linking ... done.
Loading package mmorph-1.0.4 ... linking ... done.
Loading package resourcet-1.1.3 ... linking ... done.
Loading package nats-0.2 ... linking ... done.
Loading package unordered-containers-0.2.5.1 ... linking ... done.
Loading package semigroups-0.15.4 ... linking ... done.
Loading package void-0.6.1 ... linking ... done.
Loading package conduit-1.2.3 ... linking ... done.
Loading package filepath-1.3.0.2 ... linking ... done.
Loading package old-locale-1.0.0.6 ... linking ... done.
Loading package time-1.4.2 ... linking ... done.
Loading package unix-2.7.0.1 ... linking ... done.
Loading package directory-1.2.1.0 ... linking ... done.
Loading package parsec-3.1.7 ... linking ... done.
Loading package network-2.5.0.0 ... linking ... done.
Loading package primitive-0.5.4.0 ... linking ... done.
Loading package process-1.2.0.0 ... linking ... done.
Loading package random-1.0.1.1 ... linking ... done.
Loading package zlib-0.5.4.2 ... linking ... done.
Loading package streaming-commons-0.1.6 ... linking ... done.
Loading package conduit-extra-1.1.4.2 ... linking ... done.
Loading package cryptohash-0.11.6 ... linking ... done.
Loading package cryptohash-conduit-0.1.1 ... linking ... done.
Loading package css-text-0.1.2.1 ... linking ... done.
Loading package data-default-class-0.0.1 ... linking ... done.
Loading package data-default-instances-base-0.0.1 ... linking ... done.
Loading package data-default-instances-containers-0.0.1 ... linking ... done.
Loading package dlist-0.7.1 ... linking ... done.
Loading package data-default-instances-dlist-0.0.1 ... linking ... done.
Loading package data-default-instances-old-locale-0.0.1 ... linking ... done.
Loading package data-default-0.5.3 ... linking ... done.
Loading package pretty-1.1.1.1 ... linking ... done.
Loading package template-haskell ... linking ... done.
Loading package file-embed-0.0.7 ... linking ... done.
Loading package utf8-string-0.3.8 ... linking ... done.
Loading package language-javascript-0.5.13 ... linking ... done.
Loading package hjsmin-0.1.4.7 ... linking ... done.
Loading package case-insensitive-1.2.0.1 ... linking ... done.
Loading package http-types-0.8.5 ... linking ... done.
Loading package mime-types-0.1.0.4 ... linking ... done.
Loading package old-time-1.1.0.2 ... linking ... done.
Loading package system-filepath-0.4.12 ... linking ... done.
Loading package system-fileio-0.3.15 ... linking ... done.
Loading package unix-compat-0.4.1.3 ... linking ... done.
Loading package vault-0.3.0.3 ... linking ... done.
Loading package wai-3.0.2 ... linking ... done.
Loading package blaze-markup-0.6.1.1 ... linking ... done.
Loading package blaze-html-0.7.0.3 ... linking ... done.
Loading package http-date-0.0.4 ... linking ... done.
Loading package ansi-terminal-0.6.2.1 ... linking ... done.
Loading package ansi-wl-pprint-0.6.7.1 ... linking ... done.
Loading package transformers-compat-0.3.3.3 ... linking ... done.
Loading package optparse-applicative-0.11.0.1 ... linking ... done.
Loading package auto-update-0.1.2 ... linking ... done.
Loading package fast-logger-2.2.3 ... linking ... done.
Loading package stringsearch-0.3.6.5 ... linking ... done.
Loading package byteorder-1.0.4 ... linking ... done.
Loading package easy-file-0.2.0 ... linking ... done.
Loading package binary-0.7.1.0 ... linking ... done.
Loading package unix-time-0.3.4 ... linking ... done.
Loading package wai-logger-2.2.3 ... linking ... done.
Loading package word8-0.1.1 ... linking ... done.
Loading package wai-extra-3.0.2.1 ... linking ... done.
Loading package simple-sendfile-0.2.18 ... linking ... done.
Loading package warp-3.0.2.3 ... linking ... done.
Loading package wai-app-static-3.0.0.3 ... linking ... done.
Loading package syb-0.4.2 ... linking ... done.
Loading package vector-0.10.12.1 ... linking ... done.
Loading package aeson-0.8.0.2 ... linking ... done.
Loading package cereal-0.4.1.0 ... linking ... done.
Loading package securemem-0.1.4 ... linking ... done.
Loading package crypto-cipher-types-0.0.9 ... linking ... done.
Loading package cipher-aes-0.2.9 ... linking ... done.
Loading package crypto-random-0.0.8 ... linking ... done.
Loading package cprng-aes-0.6.1 ... linking ... done.
Loading package entropy-0.3.4.1 ... linking ... done.
Loading package tagged-0.7.3 ... linking ... done.
Loading package crypto-api-0.13.2 ... linking ... done.
Loading package setenv-0.1.1.1 ... linking ... done.
Loading package skein-1.0.9.1 ... linking ... done.
Loading package clientsession-0.9.1.1 ... linking ... done.
Loading package cookie-0.4.1.4 ... linking ... done.
Loading package monad-loops-0.4.2.1 ... linking ... done.
Loading package stm-chans-3.0.0.2 ... linking ... done.
Loading package monad-logger-0.3.9 ... linking ... done.
Loading package mwc-random-0.13.2.2 ... linking ... done.
Loading package path-pieces-0.1.4 ... linking ... done.
Loading package safe-0.3.8 ... linking ... done.
Loading package shakespeare-2.0.2.1 ... linking ... done.
Loading package yesod-core-1.4.4.5 ... linking ... done.
Loading package yesod-static-1.4.0.3 ... linking ... done.
Loading package yaml-0.8.10 ... linking ... done.
Loading package publicsuffixlist-0.1 ... linking ... done.
Loading package http-client-0.4.5 ... linking ... done.
Loading package socks-0.5.4 ... linking ... done.
Loading package hourglass-0.2.6 ... linking ... done.
Loading package asn1-types-0.3.0 ... linking ... done.
Loading package asn1-encoding-0.9.0 ... linking ... done.
Loading package cipher-des-0.0.6 ... linking ... done.
Loading package cipher-rc4-0.1.4 ... linking ... done.
Loading package crypto-numbers-0.2.3 ... linking ... done.
Loading package crypto-pubkey-types-0.4.2.3 ... linking ... done.
Loading package crypto-pubkey-0.2.4 ... linking ... done.
Loading package asn1-parse-0.9.0 ... linking ... done.
Loading package pem-0.2.2 ... linking ... done.
Loading package x509-1.5.0.1 ... linking ... done.
Loading package x509-store-1.5.0 ... linking ... done.
Loading package x509-validation-1.5.1 ... linking ... done.
Loading package tls-1.2.13 ... linking ... done.
Loading package x509-system-1.5.0 ... linking ... done.
Loading package connection-0.2.3 ... linking ... done.
Loading package http-client-tls-0.2.2 ... linking ... done.
Loading package http-conduit-2.1.5 ... linking ... done.
Loading package xml-types-0.3.4 ... linking ... done.
Loading package xml-conduit-1.2.3 ... linking ... done.
Loading package tagstream-conduit-0.5.5.3 ... linking ... done.
Loading package authenticate-1.3.2.10 ... linking ... done.
Loading package base16-bytestring-0.1.1.6 ... linking ... done.
Loading package email-validate-2.0.1 ... linking ... done.
Loading package mime-mail-0.4.6 ... linking ... done.
Loading package resource-pool-0.2.3.1 ... linking ... done.
Loading package silently-1.2.4.1 ... linking ... done.
Loading package persistent-2.1.1 ... linking ... done.
Loading package persistent-template-2.1 ... linking ... done.
Loading package tagsoup-0.13.3 ... linking ... done.
Loading package xss-sanitize-0.3.5.4 ... linking ... done.
Loading package yesod-persistent-1.4.0.1 ... linking ... done.
Loading package yesod-form-1.4.1.1 ... linking ... done.
Loading package yesod-auth-1.4.1 ... linking ... done.
Loading package yesod-1.4.1 ... linking ... done.
[3 of 7] Compiling Settings.StaticFiles ( Settings/StaticFiles.hs,
dist/build/Settings/StaticFiles.o )
[4 of 7] Compiling Foundation ( Foundation.hs, dist/build/Foundation.o )
[5 of 7] Compiling Import ( Import.hs, dist/build/Import.o )
[6 of 7] Compiling Handler.Home ( Handler/Home.hs,
dist/build/Handler/Home.o )
[7 of 7] Compiling Application ( Application.hs, dist/build/Application.o )
/usr/bin/ld: dist/build/Foundation.dyn_o: relocation R_X86_64_PC32
against undefined symbol
`_hpc_tickboxes_linkerzmtestzm0zi0zi0_Settings_hpc' can not be used
when making a shared object; recompile with -fPIC
/usr/bin/ld: final link failed: Bad value
collect2: error: ld returned 1 exit status
<no location info>: ghc: phase `Linker' failed (exitcode = 1)
[linuxadmin@vm01 20:20:38 ~/linker-test ]
$
On 19 December 2014 at 20:21, David Turner
Ok, I can reproduce this with a bare Yesod scaffold:
[linuxadmin@vm01 20:19:43 ~ ] $ yesod init Welcome to the Yesod scaffolder. I'm going to be creating a skeleton Yesod project for you.
What do you want to call your project? We'll use this for the cabal name.
Project name: linker-test Yesod uses Persistent for its (you guessed it) persistence layer. This tool will build in either SQLite or PostgreSQL or MongoDB support for you. We recommend starting with SQLite: it has no dependencies.
s = sqlite p = postgresql pf = postgresql + Fay (experimental) mongo = mongodb mysql = MySQL simple = no database, no auth url = Let me specify URL containing a site (advanced)
So, what'll it be? simple That's it! I'm creating your files now...
---------------------------------------
___ {-) |\ [m,].-"-. / [][__][__] \(/\__/\)/ [__][__][__][__]~~~~ | | [][__][__][__][__][] / | [__][__][__][__][__]| /| | [][__][__][__][__][]| || | ~~~~ ejm [__][__][__][__][__]__,__, \__/
---------------------------------------
The foundation for your web application has been built.
There are a lot of resources to help you use Yesod. Start with the book: http://www.yesodweb.com/book Take part in the community: http://yesodweb.com/page/community
It's highly recommended to follow the quick start guide for installing Yesod: http://www.yesodweb.com/page/quickstart
If your system is already configured correctly, please run:
cd linker-test && cabal install -j --enable-tests --max-backjumps=-1 --reorder-goals && yesod devel [linuxadmin@vm01 20:20:07 ~ ] $ cd linker-test [linuxadmin@vm01 20:20:11 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure --disable-tests --enable-coverage --disable-profiling Resolving dependencies... Configuring linker-test-0.0.0... [linuxadmin@vm01 20:20:25 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build Building linker-test-0.0.0... Preprocessing library linker-test-0.0.0... [1 of 7] Compiling Settings.Development ( Settings/Development.hs, dist/build/Settings/Development.o ) [2 of 7] Compiling Settings ( Settings.hs, dist/build/Settings.o ) Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done. Loading package base ... linking ... done. Loading package array-0.5.0.0 ... linking ... done. Loading package stm-2.4.3 ... linking ... done. Loading package async-2.0.1.6 ... linking ... done. Loading package deepseq-1.3.0.2 ... linking ... done. Loading package bytestring-0.10.4.0 ... linking ... done. Loading package containers-0.5.5.1 ... linking ... done. Loading package text-1.1.1.3 ... linking ... done. Loading package hashable-1.2.2.0 ... linking ... done. Loading package scientific-0.3.3.2 ... linking ... done. Loading package attoparsec-0.12.1.2 ... linking ... done. Loading package base64-bytestring-1.0.0.1 ... linking ... done. Loading package blaze-builder-0.3.3.4 ... linking ... done. Loading package byteable-0.1.1 ... linking ... done. Loading package transformers-0.3.0.0 ... linking ... done. Loading package mtl-2.1.3.1 ... linking ... done. Loading package exceptions-0.6.1 ... linking ... done. Loading package base-unicode-symbols-0.2.2.4 ... linking ... done. Loading package transformers-base-0.4.3 ... linking ... done. Loading package monad-control-0.3.3.0 ... linking ... done. Loading package lifted-base-0.2.2.1 ... linking ... done. Loading package mmorph-1.0.4 ... linking ... done. Loading package resourcet-1.1.3 ... linking ... done. Loading package nats-0.2 ... linking ... done. Loading package unordered-containers-0.2.5.1 ... linking ... done. Loading package semigroups-0.15.4 ... linking ... done. Loading package void-0.6.1 ... linking ... done. Loading package conduit-1.2.3 ... linking ... done. Loading package filepath-1.3.0.2 ... linking ... done. Loading package old-locale-1.0.0.6 ... linking ... done. Loading package time-1.4.2 ... linking ... done. Loading package unix-2.7.0.1 ... linking ... done. Loading package directory-1.2.1.0 ... linking ... done. Loading package parsec-3.1.7 ... linking ... done. Loading package network-2.5.0.0 ... linking ... done. Loading package primitive-0.5.4.0 ... linking ... done. Loading package process-1.2.0.0 ... linking ... done. Loading package random-1.0.1.1 ... linking ... done. Loading package zlib-0.5.4.2 ... linking ... done. Loading package streaming-commons-0.1.6 ... linking ... done. Loading package conduit-extra-1.1.4.2 ... linking ... done. Loading package cryptohash-0.11.6 ... linking ... done. Loading package cryptohash-conduit-0.1.1 ... linking ... done. Loading package css-text-0.1.2.1 ... linking ... done. Loading package data-default-class-0.0.1 ... linking ... done. Loading package data-default-instances-base-0.0.1 ... linking ... done. Loading package data-default-instances-containers-0.0.1 ... linking ... done. Loading package dlist-0.7.1 ... linking ... done. Loading package data-default-instances-dlist-0.0.1 ... linking ... done. Loading package data-default-instances-old-locale-0.0.1 ... linking ... done. Loading package data-default-0.5.3 ... linking ... done. Loading package pretty-1.1.1.1 ... linking ... done. Loading package template-haskell ... linking ... done. Loading package file-embed-0.0.7 ... linking ... done. Loading package utf8-string-0.3.8 ... linking ... done. Loading package language-javascript-0.5.13 ... linking ... done. Loading package hjsmin-0.1.4.7 ... linking ... done. Loading package case-insensitive-1.2.0.1 ... linking ... done. Loading package http-types-0.8.5 ... linking ... done. Loading package mime-types-0.1.0.4 ... linking ... done. Loading package old-time-1.1.0.2 ... linking ... done. Loading package system-filepath-0.4.12 ... linking ... done. Loading package system-fileio-0.3.15 ... linking ... done. Loading package unix-compat-0.4.1.3 ... linking ... done. Loading package vault-0.3.0.3 ... linking ... done. Loading package wai-3.0.2 ... linking ... done. Loading package blaze-markup-0.6.1.1 ... linking ... done. Loading package blaze-html-0.7.0.3 ... linking ... done. Loading package http-date-0.0.4 ... linking ... done. Loading package ansi-terminal-0.6.2.1 ... linking ... done. Loading package ansi-wl-pprint-0.6.7.1 ... linking ... done. Loading package transformers-compat-0.3.3.3 ... linking ... done. Loading package optparse-applicative-0.11.0.1 ... linking ... done. Loading package auto-update-0.1.2 ... linking ... done. Loading package fast-logger-2.2.3 ... linking ... done. Loading package stringsearch-0.3.6.5 ... linking ... done. Loading package byteorder-1.0.4 ... linking ... done. Loading package easy-file-0.2.0 ... linking ... done. Loading package binary-0.7.1.0 ... linking ... done. Loading package unix-time-0.3.4 ... linking ... done. Loading package wai-logger-2.2.3 ... linking ... done. Loading package word8-0.1.1 ... linking ... done. Loading package wai-extra-3.0.2.1 ... linking ... done. Loading package simple-sendfile-0.2.18 ... linking ... done. Loading package warp-3.0.2.3 ... linking ... done. Loading package wai-app-static-3.0.0.3 ... linking ... done. Loading package syb-0.4.2 ... linking ... done. Loading package vector-0.10.12.1 ... linking ... done. Loading package aeson-0.8.0.2 ... linking ... done. Loading package cereal-0.4.1.0 ... linking ... done. Loading package securemem-0.1.4 ... linking ... done. Loading package crypto-cipher-types-0.0.9 ... linking ... done. Loading package cipher-aes-0.2.9 ... linking ... done. Loading package crypto-random-0.0.8 ... linking ... done. Loading package cprng-aes-0.6.1 ... linking ... done. Loading package entropy-0.3.4.1 ... linking ... done. Loading package tagged-0.7.3 ... linking ... done. Loading package crypto-api-0.13.2 ... linking ... done. Loading package setenv-0.1.1.1 ... linking ... done. Loading package skein-1.0.9.1 ... linking ... done. Loading package clientsession-0.9.1.1 ... linking ... done. Loading package cookie-0.4.1.4 ... linking ... done. Loading package monad-loops-0.4.2.1 ... linking ... done. Loading package stm-chans-3.0.0.2 ... linking ... done. Loading package monad-logger-0.3.9 ... linking ... done. Loading package mwc-random-0.13.2.2 ... linking ... done. Loading package path-pieces-0.1.4 ... linking ... done. Loading package safe-0.3.8 ... linking ... done. Loading package shakespeare-2.0.2.1 ... linking ... done. Loading package yesod-core-1.4.4.5 ... linking ... done. Loading package yesod-static-1.4.0.3 ... linking ... done. Loading package yaml-0.8.10 ... linking ... done. Loading package publicsuffixlist-0.1 ... linking ... done. Loading package http-client-0.4.5 ... linking ... done. Loading package socks-0.5.4 ... linking ... done. Loading package hourglass-0.2.6 ... linking ... done. Loading package asn1-types-0.3.0 ... linking ... done. Loading package asn1-encoding-0.9.0 ... linking ... done. Loading package cipher-des-0.0.6 ... linking ... done. Loading package cipher-rc4-0.1.4 ... linking ... done. Loading package crypto-numbers-0.2.3 ... linking ... done. Loading package crypto-pubkey-types-0.4.2.3 ... linking ... done. Loading package crypto-pubkey-0.2.4 ... linking ... done. Loading package asn1-parse-0.9.0 ... linking ... done. Loading package pem-0.2.2 ... linking ... done. Loading package x509-1.5.0.1 ... linking ... done. Loading package x509-store-1.5.0 ... linking ... done. Loading package x509-validation-1.5.1 ... linking ... done. Loading package tls-1.2.13 ... linking ... done. Loading package x509-system-1.5.0 ... linking ... done. Loading package connection-0.2.3 ... linking ... done. Loading package http-client-tls-0.2.2 ... linking ... done. Loading package http-conduit-2.1.5 ... linking ... done. Loading package xml-types-0.3.4 ... linking ... done. Loading package xml-conduit-1.2.3 ... linking ... done. Loading package tagstream-conduit-0.5.5.3 ... linking ... done. Loading package authenticate-1.3.2.10 ... linking ... done. Loading package base16-bytestring-0.1.1.6 ... linking ... done. Loading package email-validate-2.0.1 ... linking ... done. Loading package mime-mail-0.4.6 ... linking ... done. Loading package resource-pool-0.2.3.1 ... linking ... done. Loading package silently-1.2.4.1 ... linking ... done. Loading package persistent-2.1.1 ... linking ... done. Loading package persistent-template-2.1 ... linking ... done. Loading package tagsoup-0.13.3 ... linking ... done. Loading package xss-sanitize-0.3.5.4 ... linking ... done. Loading package yesod-persistent-1.4.0.1 ... linking ... done. Loading package yesod-form-1.4.1.1 ... linking ... done. Loading package yesod-auth-1.4.1 ... linking ... done. Loading package yesod-1.4.1 ... linking ... done. [3 of 7] Compiling Settings.StaticFiles ( Settings/StaticFiles.hs, dist/build/Settings/StaticFiles.o ) [4 of 7] Compiling Foundation ( Foundation.hs, dist/build/Foundation.o ) [5 of 7] Compiling Import ( Import.hs, dist/build/Import.o ) [6 of 7] Compiling Handler.Home ( Handler/Home.hs, dist/build/Handler/Home.o ) [7 of 7] Compiling Application ( Application.hs, dist/build/Application.o ) /usr/bin/ld: dist/build/Foundation.dyn_o: relocation R_X86_64_PC32 against undefined symbol `_hpc_tickboxes_linkerzmtestzm0zi0zi0_Settings_hpc' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: error: ld returned 1 exit status
<no location info>: ghc: phase `Linker' failed (exitcode = 1) [linuxadmin@vm01 20:20:38 ~/linker-test ] $
On 19 December 2014 at 20:03, David Turner
wrote: [Failed to copy haskell-cafe in to my first response:]
I thought I had disabled profiling there, although it was enabled when I was using cabal which wrote the original command line so that might explain it.
I will try a more recent cabal-install this evening.
Thanks for the speedy response!
[Time passes - second response:]
I have tried cabal-install build from the latest revision (4aabb4f4b1) with the same result. From a clean checkout of my source:
$ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure --disable-tests --enable-coverage --disable-profiling $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build -v
Similar outcome.
On 19 December 2014 at 18:53, Carter Schonwald
wrote: i think the fix for this, or a related problem is merged into cabal/cabal-install head, and will be in 1.22
does your problem go away if you dont enable profiled builds? (is so, its likely the same problem)
On Fri, Dec 19, 2014 at 1:32 PM, David Turner
wrote: Hi,
I'm having trouble making a HPC build of a Yesod application. It fails with:
/usr/bin/ld: dist/build/StreamReading/Config.dyn_o: relocation R_X86_64_PC32 against undefined symbol `_hpc_tickboxes_tracszmenterprisezm0zi0zi0_Settings_hpc' can not be used when making a shared object; recompile with -fPIC
I've narrowed it down to a call to ghc and posted the output in all its gory detail at http://lpaste.net/116872 if that's any help.
Of note is that dist/build/Settings.dyn_o is unexpectedly missing from the list of parameters to the last call to gcc, and the missing symbol is defined in the same. There are, in fact, quite a number of missing .dyn_o files in that list.
Slightly weirdly, when I run the same command line again, it seems to work. At least, there are no errors reported and the exit code is 0.
Any ideas?
Cheers,
David _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Hi all,
Turns out this was already a known issue in GHC:
https://ghc.haskell.org/trac/ghc/ticket/9762 and a fix is now on the
way for 7.10.1. In the meantime, adding -fomit-interface-pragmas works
for me.
Thanks,
David
On 19 December 2014 at 20:28, David Turner
Ok, I can reproduce this with a bare Yesod scaffold (using the latest cabal-install) - see below.
If I run cabal build a couple more times, it completes successfully, which is mighty strange!
[linuxadmin@vm01 20:19:43 ~ ] $ yesod init Welcome to the Yesod scaffolder. I'm going to be creating a skeleton Yesod project for you.
What do you want to call your project? We'll use this for the cabal name.
Project name: linker-test Yesod uses Persistent for its (you guessed it) persistence layer. This tool will build in either SQLite or PostgreSQL or MongoDB support for you. We recommend starting with SQLite: it has no dependencies.
s = sqlite p = postgresql pf = postgresql + Fay (experimental) mongo = mongodb mysql = MySQL simple = no database, no auth url = Let me specify URL containing a site (advanced)
So, what'll it be? simple That's it! I'm creating your files now...
---------------------------------------
___ {-) |\ [m,].-"-. / [][__][__] \(/\__/\)/ [__][__][__][__]~~~~ | | [][__][__][__][__][] / | [__][__][__][__][__]| /| | [][__][__][__][__][]| || | ~~~~ ejm [__][__][__][__][__]__,__, \__/
---------------------------------------
The foundation for your web application has been built.
There are a lot of resources to help you use Yesod. Start with the book: http://www.yesodweb.com/book Take part in the community: http://yesodweb.com/page/community
It's highly recommended to follow the quick start guide for installing Yesod: http://www.yesodweb.com/page/quickstart
If your system is already configured correctly, please run:
cd linker-test && cabal install -j --enable-tests --max-backjumps=-1 --reorder-goals && yesod devel [linuxadmin@vm01 20:20:07 ~ ] $ cd linker-test [linuxadmin@vm01 20:20:11 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure --disable-tests --enable-coverage --disable-profiling Resolving dependencies... Configuring linker-test-0.0.0... [linuxadmin@vm01 20:20:25 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build Building linker-test-0.0.0... Preprocessing library linker-test-0.0.0... [1 of 7] Compiling Settings.Development ( Settings/Development.hs, dist/build/Settings/Development.o ) [2 of 7] Compiling Settings ( Settings.hs, dist/build/Settings.o ) Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done. Loading package base ... linking ... done. Loading package array-0.5.0.0 ... linking ... done. Loading package stm-2.4.3 ... linking ... done. Loading package async-2.0.1.6 ... linking ... done. Loading package deepseq-1.3.0.2 ... linking ... done. Loading package bytestring-0.10.4.0 ... linking ... done. Loading package containers-0.5.5.1 ... linking ... done. Loading package text-1.1.1.3 ... linking ... done. Loading package hashable-1.2.2.0 ... linking ... done. Loading package scientific-0.3.3.2 ... linking ... done. Loading package attoparsec-0.12.1.2 ... linking ... done. Loading package base64-bytestring-1.0.0.1 ... linking ... done. Loading package blaze-builder-0.3.3.4 ... linking ... done. Loading package byteable-0.1.1 ... linking ... done. Loading package transformers-0.3.0.0 ... linking ... done. Loading package mtl-2.1.3.1 ... linking ... done. Loading package exceptions-0.6.1 ... linking ... done. Loading package base-unicode-symbols-0.2.2.4 ... linking ... done. Loading package transformers-base-0.4.3 ... linking ... done. Loading package monad-control-0.3.3.0 ... linking ... done. Loading package lifted-base-0.2.2.1 ... linking ... done. Loading package mmorph-1.0.4 ... linking ... done. Loading package resourcet-1.1.3 ... linking ... done. Loading package nats-0.2 ... linking ... done. Loading package unordered-containers-0.2.5.1 ... linking ... done. Loading package semigroups-0.15.4 ... linking ... done. Loading package void-0.6.1 ... linking ... done. Loading package conduit-1.2.3 ... linking ... done. Loading package filepath-1.3.0.2 ... linking ... done. Loading package old-locale-1.0.0.6 ... linking ... done. Loading package time-1.4.2 ... linking ... done. Loading package unix-2.7.0.1 ... linking ... done. Loading package directory-1.2.1.0 ... linking ... done. Loading package parsec-3.1.7 ... linking ... done. Loading package network-2.5.0.0 ... linking ... done. Loading package primitive-0.5.4.0 ... linking ... done. Loading package process-1.2.0.0 ... linking ... done. Loading package random-1.0.1.1 ... linking ... done. Loading package zlib-0.5.4.2 ... linking ... done. Loading package streaming-commons-0.1.6 ... linking ... done. Loading package conduit-extra-1.1.4.2 ... linking ... done. Loading package cryptohash-0.11.6 ... linking ... done. Loading package cryptohash-conduit-0.1.1 ... linking ... done. Loading package css-text-0.1.2.1 ... linking ... done. Loading package data-default-class-0.0.1 ... linking ... done. Loading package data-default-instances-base-0.0.1 ... linking ... done. Loading package data-default-instances-containers-0.0.1 ... linking ... done. Loading package dlist-0.7.1 ... linking ... done. Loading package data-default-instances-dlist-0.0.1 ... linking ... done. Loading package data-default-instances-old-locale-0.0.1 ... linking ... done. Loading package data-default-0.5.3 ... linking ... done. Loading package pretty-1.1.1.1 ... linking ... done. Loading package template-haskell ... linking ... done. Loading package file-embed-0.0.7 ... linking ... done. Loading package utf8-string-0.3.8 ... linking ... done. Loading package language-javascript-0.5.13 ... linking ... done. Loading package hjsmin-0.1.4.7 ... linking ... done. Loading package case-insensitive-1.2.0.1 ... linking ... done. Loading package http-types-0.8.5 ... linking ... done. Loading package mime-types-0.1.0.4 ... linking ... done. Loading package old-time-1.1.0.2 ... linking ... done. Loading package system-filepath-0.4.12 ... linking ... done. Loading package system-fileio-0.3.15 ... linking ... done. Loading package unix-compat-0.4.1.3 ... linking ... done. Loading package vault-0.3.0.3 ... linking ... done. Loading package wai-3.0.2 ... linking ... done. Loading package blaze-markup-0.6.1.1 ... linking ... done. Loading package blaze-html-0.7.0.3 ... linking ... done. Loading package http-date-0.0.4 ... linking ... done. Loading package ansi-terminal-0.6.2.1 ... linking ... done. Loading package ansi-wl-pprint-0.6.7.1 ... linking ... done. Loading package transformers-compat-0.3.3.3 ... linking ... done. Loading package optparse-applicative-0.11.0.1 ... linking ... done. Loading package auto-update-0.1.2 ... linking ... done. Loading package fast-logger-2.2.3 ... linking ... done. Loading package stringsearch-0.3.6.5 ... linking ... done. Loading package byteorder-1.0.4 ... linking ... done. Loading package easy-file-0.2.0 ... linking ... done. Loading package binary-0.7.1.0 ... linking ... done. Loading package unix-time-0.3.4 ... linking ... done. Loading package wai-logger-2.2.3 ... linking ... done. Loading package word8-0.1.1 ... linking ... done. Loading package wai-extra-3.0.2.1 ... linking ... done. Loading package simple-sendfile-0.2.18 ... linking ... done. Loading package warp-3.0.2.3 ... linking ... done. Loading package wai-app-static-3.0.0.3 ... linking ... done. Loading package syb-0.4.2 ... linking ... done. Loading package vector-0.10.12.1 ... linking ... done. Loading package aeson-0.8.0.2 ... linking ... done. Loading package cereal-0.4.1.0 ... linking ... done. Loading package securemem-0.1.4 ... linking ... done. Loading package crypto-cipher-types-0.0.9 ... linking ... done. Loading package cipher-aes-0.2.9 ... linking ... done. Loading package crypto-random-0.0.8 ... linking ... done. Loading package cprng-aes-0.6.1 ... linking ... done. Loading package entropy-0.3.4.1 ... linking ... done. Loading package tagged-0.7.3 ... linking ... done. Loading package crypto-api-0.13.2 ... linking ... done. Loading package setenv-0.1.1.1 ... linking ... done. Loading package skein-1.0.9.1 ... linking ... done. Loading package clientsession-0.9.1.1 ... linking ... done. Loading package cookie-0.4.1.4 ... linking ... done. Loading package monad-loops-0.4.2.1 ... linking ... done. Loading package stm-chans-3.0.0.2 ... linking ... done. Loading package monad-logger-0.3.9 ... linking ... done. Loading package mwc-random-0.13.2.2 ... linking ... done. Loading package path-pieces-0.1.4 ... linking ... done. Loading package safe-0.3.8 ... linking ... done. Loading package shakespeare-2.0.2.1 ... linking ... done. Loading package yesod-core-1.4.4.5 ... linking ... done. Loading package yesod-static-1.4.0.3 ... linking ... done. Loading package yaml-0.8.10 ... linking ... done. Loading package publicsuffixlist-0.1 ... linking ... done. Loading package http-client-0.4.5 ... linking ... done. Loading package socks-0.5.4 ... linking ... done. Loading package hourglass-0.2.6 ... linking ... done. Loading package asn1-types-0.3.0 ... linking ... done. Loading package asn1-encoding-0.9.0 ... linking ... done. Loading package cipher-des-0.0.6 ... linking ... done. Loading package cipher-rc4-0.1.4 ... linking ... done. Loading package crypto-numbers-0.2.3 ... linking ... done. Loading package crypto-pubkey-types-0.4.2.3 ... linking ... done. Loading package crypto-pubkey-0.2.4 ... linking ... done. Loading package asn1-parse-0.9.0 ... linking ... done. Loading package pem-0.2.2 ... linking ... done. Loading package x509-1.5.0.1 ... linking ... done. Loading package x509-store-1.5.0 ... linking ... done. Loading package x509-validation-1.5.1 ... linking ... done. Loading package tls-1.2.13 ... linking ... done. Loading package x509-system-1.5.0 ... linking ... done. Loading package connection-0.2.3 ... linking ... done. Loading package http-client-tls-0.2.2 ... linking ... done. Loading package http-conduit-2.1.5 ... linking ... done. Loading package xml-types-0.3.4 ... linking ... done. Loading package xml-conduit-1.2.3 ... linking ... done. Loading package tagstream-conduit-0.5.5.3 ... linking ... done. Loading package authenticate-1.3.2.10 ... linking ... done. Loading package base16-bytestring-0.1.1.6 ... linking ... done. Loading package email-validate-2.0.1 ... linking ... done. Loading package mime-mail-0.4.6 ... linking ... done. Loading package resource-pool-0.2.3.1 ... linking ... done. Loading package silently-1.2.4.1 ... linking ... done. Loading package persistent-2.1.1 ... linking ... done. Loading package persistent-template-2.1 ... linking ... done. Loading package tagsoup-0.13.3 ... linking ... done. Loading package xss-sanitize-0.3.5.4 ... linking ... done. Loading package yesod-persistent-1.4.0.1 ... linking ... done. Loading package yesod-form-1.4.1.1 ... linking ... done. Loading package yesod-auth-1.4.1 ... linking ... done. Loading package yesod-1.4.1 ... linking ... done. [3 of 7] Compiling Settings.StaticFiles ( Settings/StaticFiles.hs, dist/build/Settings/StaticFiles.o ) [4 of 7] Compiling Foundation ( Foundation.hs, dist/build/Foundation.o ) [5 of 7] Compiling Import ( Import.hs, dist/build/Import.o ) [6 of 7] Compiling Handler.Home ( Handler/Home.hs, dist/build/Handler/Home.o ) [7 of 7] Compiling Application ( Application.hs, dist/build/Application.o ) /usr/bin/ld: dist/build/Foundation.dyn_o: relocation R_X86_64_PC32 against undefined symbol `_hpc_tickboxes_linkerzmtestzm0zi0zi0_Settings_hpc' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: error: ld returned 1 exit status
<no location info>: ghc: phase `Linker' failed (exitcode = 1) [linuxadmin@vm01 20:20:38 ~/linker-test ] $
On 19 December 2014 at 20:21, David Turner
wrote: Ok, I can reproduce this with a bare Yesod scaffold:
[linuxadmin@vm01 20:19:43 ~ ] $ yesod init Welcome to the Yesod scaffolder. I'm going to be creating a skeleton Yesod project for you.
What do you want to call your project? We'll use this for the cabal name.
Project name: linker-test Yesod uses Persistent for its (you guessed it) persistence layer. This tool will build in either SQLite or PostgreSQL or MongoDB support for you. We recommend starting with SQLite: it has no dependencies.
s = sqlite p = postgresql pf = postgresql + Fay (experimental) mongo = mongodb mysql = MySQL simple = no database, no auth url = Let me specify URL containing a site (advanced)
So, what'll it be? simple That's it! I'm creating your files now...
---------------------------------------
___ {-) |\ [m,].-"-. / [][__][__] \(/\__/\)/ [__][__][__][__]~~~~ | | [][__][__][__][__][] / | [__][__][__][__][__]| /| | [][__][__][__][__][]| || | ~~~~ ejm [__][__][__][__][__]__,__, \__/
---------------------------------------
The foundation for your web application has been built.
There are a lot of resources to help you use Yesod. Start with the book: http://www.yesodweb.com/book Take part in the community: http://yesodweb.com/page/community
It's highly recommended to follow the quick start guide for installing Yesod: http://www.yesodweb.com/page/quickstart
If your system is already configured correctly, please run:
cd linker-test && cabal install -j --enable-tests --max-backjumps=-1 --reorder-goals && yesod devel [linuxadmin@vm01 20:20:07 ~ ] $ cd linker-test [linuxadmin@vm01 20:20:11 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure --disable-tests --enable-coverage --disable-profiling Resolving dependencies... Configuring linker-test-0.0.0... [linuxadmin@vm01 20:20:25 ~/linker-test ] $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build Building linker-test-0.0.0... Preprocessing library linker-test-0.0.0... [1 of 7] Compiling Settings.Development ( Settings/Development.hs, dist/build/Settings/Development.o ) [2 of 7] Compiling Settings ( Settings.hs, dist/build/Settings.o ) Loading package ghc-prim ... linking ... done. Loading package integer-gmp ... linking ... done. Loading package base ... linking ... done. Loading package array-0.5.0.0 ... linking ... done. Loading package stm-2.4.3 ... linking ... done. Loading package async-2.0.1.6 ... linking ... done. Loading package deepseq-1.3.0.2 ... linking ... done. Loading package bytestring-0.10.4.0 ... linking ... done. Loading package containers-0.5.5.1 ... linking ... done. Loading package text-1.1.1.3 ... linking ... done. Loading package hashable-1.2.2.0 ... linking ... done. Loading package scientific-0.3.3.2 ... linking ... done. Loading package attoparsec-0.12.1.2 ... linking ... done. Loading package base64-bytestring-1.0.0.1 ... linking ... done. Loading package blaze-builder-0.3.3.4 ... linking ... done. Loading package byteable-0.1.1 ... linking ... done. Loading package transformers-0.3.0.0 ... linking ... done. Loading package mtl-2.1.3.1 ... linking ... done. Loading package exceptions-0.6.1 ... linking ... done. Loading package base-unicode-symbols-0.2.2.4 ... linking ... done. Loading package transformers-base-0.4.3 ... linking ... done. Loading package monad-control-0.3.3.0 ... linking ... done. Loading package lifted-base-0.2.2.1 ... linking ... done. Loading package mmorph-1.0.4 ... linking ... done. Loading package resourcet-1.1.3 ... linking ... done. Loading package nats-0.2 ... linking ... done. Loading package unordered-containers-0.2.5.1 ... linking ... done. Loading package semigroups-0.15.4 ... linking ... done. Loading package void-0.6.1 ... linking ... done. Loading package conduit-1.2.3 ... linking ... done. Loading package filepath-1.3.0.2 ... linking ... done. Loading package old-locale-1.0.0.6 ... linking ... done. Loading package time-1.4.2 ... linking ... done. Loading package unix-2.7.0.1 ... linking ... done. Loading package directory-1.2.1.0 ... linking ... done. Loading package parsec-3.1.7 ... linking ... done. Loading package network-2.5.0.0 ... linking ... done. Loading package primitive-0.5.4.0 ... linking ... done. Loading package process-1.2.0.0 ... linking ... done. Loading package random-1.0.1.1 ... linking ... done. Loading package zlib-0.5.4.2 ... linking ... done. Loading package streaming-commons-0.1.6 ... linking ... done. Loading package conduit-extra-1.1.4.2 ... linking ... done. Loading package cryptohash-0.11.6 ... linking ... done. Loading package cryptohash-conduit-0.1.1 ... linking ... done. Loading package css-text-0.1.2.1 ... linking ... done. Loading package data-default-class-0.0.1 ... linking ... done. Loading package data-default-instances-base-0.0.1 ... linking ... done. Loading package data-default-instances-containers-0.0.1 ... linking ... done. Loading package dlist-0.7.1 ... linking ... done. Loading package data-default-instances-dlist-0.0.1 ... linking ... done. Loading package data-default-instances-old-locale-0.0.1 ... linking ... done. Loading package data-default-0.5.3 ... linking ... done. Loading package pretty-1.1.1.1 ... linking ... done. Loading package template-haskell ... linking ... done. Loading package file-embed-0.0.7 ... linking ... done. Loading package utf8-string-0.3.8 ... linking ... done. Loading package language-javascript-0.5.13 ... linking ... done. Loading package hjsmin-0.1.4.7 ... linking ... done. Loading package case-insensitive-1.2.0.1 ... linking ... done. Loading package http-types-0.8.5 ... linking ... done. Loading package mime-types-0.1.0.4 ... linking ... done. Loading package old-time-1.1.0.2 ... linking ... done. Loading package system-filepath-0.4.12 ... linking ... done. Loading package system-fileio-0.3.15 ... linking ... done. Loading package unix-compat-0.4.1.3 ... linking ... done. Loading package vault-0.3.0.3 ... linking ... done. Loading package wai-3.0.2 ... linking ... done. Loading package blaze-markup-0.6.1.1 ... linking ... done. Loading package blaze-html-0.7.0.3 ... linking ... done. Loading package http-date-0.0.4 ... linking ... done. Loading package ansi-terminal-0.6.2.1 ... linking ... done. Loading package ansi-wl-pprint-0.6.7.1 ... linking ... done. Loading package transformers-compat-0.3.3.3 ... linking ... done. Loading package optparse-applicative-0.11.0.1 ... linking ... done. Loading package auto-update-0.1.2 ... linking ... done. Loading package fast-logger-2.2.3 ... linking ... done. Loading package stringsearch-0.3.6.5 ... linking ... done. Loading package byteorder-1.0.4 ... linking ... done. Loading package easy-file-0.2.0 ... linking ... done. Loading package binary-0.7.1.0 ... linking ... done. Loading package unix-time-0.3.4 ... linking ... done. Loading package wai-logger-2.2.3 ... linking ... done. Loading package word8-0.1.1 ... linking ... done. Loading package wai-extra-3.0.2.1 ... linking ... done. Loading package simple-sendfile-0.2.18 ... linking ... done. Loading package warp-3.0.2.3 ... linking ... done. Loading package wai-app-static-3.0.0.3 ... linking ... done. Loading package syb-0.4.2 ... linking ... done. Loading package vector-0.10.12.1 ... linking ... done. Loading package aeson-0.8.0.2 ... linking ... done. Loading package cereal-0.4.1.0 ... linking ... done. Loading package securemem-0.1.4 ... linking ... done. Loading package crypto-cipher-types-0.0.9 ... linking ... done. Loading package cipher-aes-0.2.9 ... linking ... done. Loading package crypto-random-0.0.8 ... linking ... done. Loading package cprng-aes-0.6.1 ... linking ... done. Loading package entropy-0.3.4.1 ... linking ... done. Loading package tagged-0.7.3 ... linking ... done. Loading package crypto-api-0.13.2 ... linking ... done. Loading package setenv-0.1.1.1 ... linking ... done. Loading package skein-1.0.9.1 ... linking ... done. Loading package clientsession-0.9.1.1 ... linking ... done. Loading package cookie-0.4.1.4 ... linking ... done. Loading package monad-loops-0.4.2.1 ... linking ... done. Loading package stm-chans-3.0.0.2 ... linking ... done. Loading package monad-logger-0.3.9 ... linking ... done. Loading package mwc-random-0.13.2.2 ... linking ... done. Loading package path-pieces-0.1.4 ... linking ... done. Loading package safe-0.3.8 ... linking ... done. Loading package shakespeare-2.0.2.1 ... linking ... done. Loading package yesod-core-1.4.4.5 ... linking ... done. Loading package yesod-static-1.4.0.3 ... linking ... done. Loading package yaml-0.8.10 ... linking ... done. Loading package publicsuffixlist-0.1 ... linking ... done. Loading package http-client-0.4.5 ... linking ... done. Loading package socks-0.5.4 ... linking ... done. Loading package hourglass-0.2.6 ... linking ... done. Loading package asn1-types-0.3.0 ... linking ... done. Loading package asn1-encoding-0.9.0 ... linking ... done. Loading package cipher-des-0.0.6 ... linking ... done. Loading package cipher-rc4-0.1.4 ... linking ... done. Loading package crypto-numbers-0.2.3 ... linking ... done. Loading package crypto-pubkey-types-0.4.2.3 ... linking ... done. Loading package crypto-pubkey-0.2.4 ... linking ... done. Loading package asn1-parse-0.9.0 ... linking ... done. Loading package pem-0.2.2 ... linking ... done. Loading package x509-1.5.0.1 ... linking ... done. Loading package x509-store-1.5.0 ... linking ... done. Loading package x509-validation-1.5.1 ... linking ... done. Loading package tls-1.2.13 ... linking ... done. Loading package x509-system-1.5.0 ... linking ... done. Loading package connection-0.2.3 ... linking ... done. Loading package http-client-tls-0.2.2 ... linking ... done. Loading package http-conduit-2.1.5 ... linking ... done. Loading package xml-types-0.3.4 ... linking ... done. Loading package xml-conduit-1.2.3 ... linking ... done. Loading package tagstream-conduit-0.5.5.3 ... linking ... done. Loading package authenticate-1.3.2.10 ... linking ... done. Loading package base16-bytestring-0.1.1.6 ... linking ... done. Loading package email-validate-2.0.1 ... linking ... done. Loading package mime-mail-0.4.6 ... linking ... done. Loading package resource-pool-0.2.3.1 ... linking ... done. Loading package silently-1.2.4.1 ... linking ... done. Loading package persistent-2.1.1 ... linking ... done. Loading package persistent-template-2.1 ... linking ... done. Loading package tagsoup-0.13.3 ... linking ... done. Loading package xss-sanitize-0.3.5.4 ... linking ... done. Loading package yesod-persistent-1.4.0.1 ... linking ... done. Loading package yesod-form-1.4.1.1 ... linking ... done. Loading package yesod-auth-1.4.1 ... linking ... done. Loading package yesod-1.4.1 ... linking ... done. [3 of 7] Compiling Settings.StaticFiles ( Settings/StaticFiles.hs, dist/build/Settings/StaticFiles.o ) [4 of 7] Compiling Foundation ( Foundation.hs, dist/build/Foundation.o ) [5 of 7] Compiling Import ( Import.hs, dist/build/Import.o ) [6 of 7] Compiling Handler.Home ( Handler/Home.hs, dist/build/Handler/Home.o ) [7 of 7] Compiling Application ( Application.hs, dist/build/Application.o ) /usr/bin/ld: dist/build/Foundation.dyn_o: relocation R_X86_64_PC32 against undefined symbol `_hpc_tickboxes_linkerzmtestzm0zi0zi0_Settings_hpc' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: error: ld returned 1 exit status
<no location info>: ghc: phase `Linker' failed (exitcode = 1) [linuxadmin@vm01 20:20:38 ~/linker-test ] $
On 19 December 2014 at 20:03, David Turner
wrote: [Failed to copy haskell-cafe in to my first response:]
I thought I had disabled profiling there, although it was enabled when I was using cabal which wrote the original command line so that might explain it.
I will try a more recent cabal-install this evening.
Thanks for the speedy response!
[Time passes - second response:]
I have tried cabal-install build from the latest revision (4aabb4f4b1) with the same result. From a clean checkout of my source:
$ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal configure --disable-tests --enable-coverage --disable-profiling $ ~/cabal/cabal-install/.cabal-sandbox/bin/cabal build -v
Similar outcome.
On 19 December 2014 at 18:53, Carter Schonwald
wrote: i think the fix for this, or a related problem is merged into cabal/cabal-install head, and will be in 1.22
does your problem go away if you dont enable profiled builds? (is so, its likely the same problem)
On Fri, Dec 19, 2014 at 1:32 PM, David Turner
wrote: Hi,
I'm having trouble making a HPC build of a Yesod application. It fails with:
/usr/bin/ld: dist/build/StreamReading/Config.dyn_o: relocation R_X86_64_PC32 against undefined symbol `_hpc_tickboxes_tracszmenterprisezm0zi0zi0_Settings_hpc' can not be used when making a shared object; recompile with -fPIC
I've narrowed it down to a call to ghc and posted the output in all its gory detail at http://lpaste.net/116872 if that's any help.
Of note is that dist/build/Settings.dyn_o is unexpectedly missing from the list of parameters to the last call to gcc, and the missing symbol is defined in the same. There are, in fact, quite a number of missing .dyn_o files in that list.
Slightly weirdly, when I run the same command line again, it seems to work. At least, there are no errors reported and the exit code is 0.
Any ideas?
Cheers,
David _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe
participants (1)
-
David Turner