Comments (12)
Hi @turboMaCk !
Thank you very much for tests! I've forgotten about the existence of cabal-install
and that it should work with cabal
too (I've really got used to stack
, and I don't use Haskell that much). :) Will investigate this once again on the weekend or some time soon.
from hlibsass.
Thanks for reporting!
I must have messed with linker paths too much (here, if anyone is interested). I don't have the ability to test it on macOS for now, but I'll probably be able to do it in the coming month.
Do you know if this warning makes hlibsass
unusable on macOS or does it have no effect?
from hlibsass.
Sadly I cannot test this myself because I do not have macOS. This came as a bug report on one of my libraries. @turboMaCk was able to confirm this issue in my library and can perhaps let you know if this caused any functionality problems.
from hlibsass.
Hello.
I haven't noticed any issue while using hlibsass on Mac OS (10.12.1). I'm also free to help to investigate this.
from hlibsass.
Hello once again. Sorry for the (really long) delay.
I've finally been able to work on this issue - the problem lies in the updateExtraLibDirs
in Setup.hs
- Cabal stores the generated path (and other extra-lib-dirs
) in .conf
file in the GHC's packages directory, but it points to tmp
directory and gets deleted right after the package is installed. The fun thing is - the problem exists on every system, but only macOS version of ld
prints the warning.
I've tried to tweak Setup.hs
so that it does not set extraLibDirs
but still specify correct library path for ld
, but I failed (configure
works, but BuildInfo::ldOptions
/BuildInfo::options
is ignored when linking).
I leave it as-is for now.
from hlibsass.
This should be fixed in hlibsass
0.1.5.2 and hsass
0.4.1. Could you check this on macOS (I don't have access to macOS for now)?
from hlibsass.
Okay, I've confirmed that the warning does not occur anymore (the temp path is no longer added to the extra lib dirs). Closing.
from hlibsass.
Hello @jakubfijalkowski 👋
sorry for late response I've been quite busy recently. I've tried to compile this lib on mac but I'm not that experienced in Haskell ecosystem and I've ran into some issue. Today I had some time and realized I've missed presence of libsass
submodule within this repository 🤕 . After pulling submodule I was able to compile everything without any issue using stack.
If I understand this correctly issue happened in linking time so building this from source should be enough to confirm that issue is resolved, right? I can confirm cabal build
runs smoothly on macOs 10.12.3. But I still have a warning from ld
. This is full output in case you're interested:
❯❯❯ cabal build
Package has never been configured. Configuring with default flags. If this
fails, please run configure manually.
Resolving dependencies...
[1 of 1] Compiling Main ( dist/setup/setup.hs, dist/setup/Main.o )
Linking ./dist/setup/setup ...
make: Nothing to be done for `all'.
Configuring hlibsass-0.1.6.0...
Building hlibsass-0.1.6.0...
Preprocessing library hlibsass-0.1.6.0...
[1 of 7] Compiling Bindings.Libsass.Types ( Bindings/Libsass/Types.hs, dist/build/Bindings/Libsass/Types.o )
[2 of 7] Compiling Bindings.Libsass.Values ( Bindings/Libsass/Values.hs, dist/build/Bindings/Libsass/Values.o )
[3 of 7] Compiling Bindings.Libsass.Wrappers ( Bindings/Libsass/Wrappers.hs, dist/build/Bindings/Libsass/Wrappers.o )
[4 of 7] Compiling Bindings.Libsass.Functions ( Bindings/Libsass/Functions.hs, dist/build/Bindings/Libsass/Functions.o )
[5 of 7] Compiling Bindings.Libsass.Context ( Bindings/Libsass/Context.hs, dist/build/Bindings/Libsass/Context.o )
[6 of 7] Compiling Bindings.Libsass.Base ( Bindings/Libsass/Base.hs, dist/build/Bindings/Libsass/Base.o )
[7 of 7] Compiling Bindings.Libsass ( Bindings/Libsass.hs, dist/build/Bindings/Libsass.o )
ld: warning: directory not found for option '-L/Users/marek/.cabal/lib/x86_64-osx-ghc-8.0.2/hlibsass-0.1.6.0-9hHC1JuOV4iHxgsjeVNDbz'
I've tried to run tests as well - all passes.
cheers
Marek
from hlibsass.
Not sure if this is related but... I'm also getting linking errors on OS X that I can't reproduce on Linux. My project is also a hakyll site using hakyll-sass. Ironically I have missing symbol errors like this
lookupSymbol failed in relocateSection (RELOC_GOT)
/Users/dunnl/.stack/snapshots/x86_64-osx/lts-9.5/8.0.2/lib/x86_64-osx-ghc-8.0.2/hlibsass-0.1.6.1-5YgnetLqItEKQRTonDV5HP/libsass.a: unknown symbol `___dso_handle'
ghc: Could not on-demand load symbol '__ZN4Sass10VectorizedINS_10SharedImplINS_15Simple_SelectorEEEE20adjust_after_pushingES3_'
and duplicate symbol errors like this:
GHC runtime linker: fatal error: I found a duplicate definition for symbol
__ZN4Sass15Simple_SelectorC2ENS_11ParserStateENSt3__112basic_stringIcNS2_11char_traitsIcEENS2_9allocatorIcEEEE
whilst processing object file
/Users/dunnl/.stack/snapshots/x86_64-osx/lts-9.5/8.0.2/lib/x86_64-osx-ghc-8.0.2/hlibsass-0.1.6.1-5YgnetLqItEKQRTonDV5HP/libsass.a
The symbol was previously defined in
/Users/dunnl/.stack/snapshots/x86_64-osx/lts-9.5/8.0.2/lib/x86_64-osx-ghc-8.0.2/hlibsass-0.1.6.1-5YgnetLqItEKQRTonDV5HP/libsass.a(node.o)
This could be caused by:
* Loading two different object files which export the same symbol
* Specifying the same object file twice on the GHCi command line
* An incorrect `package.conf' entry, causing some object to be
loaded twice.
I've tried nuking .stack-work/
and even ~/.stack/snapshots/x86_64-osx/lts-9.5/
(and lts-9.6
) but no luck. stack.yaml
is pointing to lts-9.6 and a specific git commit of hakyll-sass here, but fiddling with the configuration doesn't make the problem go away.
Does my issue sound related to this one? I am able to build the master branch of hlibsass with stack without warnings.
from hlibsass.
I've traced my issue to a TemplateHaskell expression in an unrelated module. I've opened an issue on the other project here if anyone is interested.
from hlibsass.
Hey @dunnl,
Thank you for the report and the investigation! I think it is related to issue #1 and not this one. Nonetheless, it's good to know that this might not be related to hlibsass
.
from hlibsass.
Closing since there wasn't any activity recently (and the issue seems to be fixed).
from hlibsass.
Related Issues (14)
- Trouble installing on Mac OS X HOT 5
- Setup.hs `makeLibsass` assumes that `make` is GNU make HOT 4
- Build fails with Cabal-3.0 HOT 3
- Update to libsass 3.6.3 HOT 3
- Windows support HOT 3
- Outdated libsass bindings. HOT 2
- Does not seem to build neatly with stack. HOT 2
- Support for libsass 3.3.2? HOT 5
- Segmentation Fault with using hlibsass (and by proxy hsass) in ghci HOT 10
- some pb with intero HOT 3
- Build failure: constructors not in scope HOT 1
- Troubles Installing on Windows10 HOT 2
- Updated Needed HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hlibsass.