Help the hopeless with spellcheck

So, after a couple of days of struggling to make spell check work on Scrivener I have decided to make a post seeking help. I’ve scoured the internet and read through this forum, but nothing seems to work. I came across these two threads which seemed to help a lot of people, but the steps are not working for me.


I’m a complete linux noob but am fairly competent. I can follow directions and even improvise a little if I have to. I’ve installed multiple libaspell libraries, dictionaries, i386 packages, tried to create symlinks, etc. Nothing seems to work.

I am on an Acer 11" Chromebook running Precise Ubuntu Unity via Crouton. I’m running the latest Scrivener beta release 1.9.01. For a while I couldn’t even get Scrivener to open but after some Google-fu and futzing around in the terminal, I got it to work.

At this point I’m open to blowing the whole thing up and starting over again if that’s best. I just want to get Scrivener fully functional (realizing, of course, that it’s beta). Scrivener is the sole purpose I’ve installed linux. I’m wondering if that’s the best way to fix this - following a very detailed step-by-step guide from start to finish instead of haphazardly getting Scrivener up and running and then trying to get spellcheck patched after the fact.

To sum it up - Help! I can’t get spellcheck to work even following the guides in this forum. I’ll try anything!

I’m hesitant to say anything here as I’m not a crouton user, but until someone wiser comes along…

I realise I’m covering things you alluded to in your post, but to start somewhere:

  1. You mention ‘multiple’ libaspell libraries. Do you have libaspell-dev installed? sudo apt-get install libaspell-dev

  2. You mention installing dictionaries. Is your system language US English? If not, you may need to do some tweaking so libaspell can find the correct dictionary. Until then, the spell check engine could function but without finding any spelling errors.

  3. You mention blowing up the installation, and I notice you linked to a thread explaining how to install from .tar. Did you install Scrivener from .tar or from .deb? If you used the .tar and then made further changes in the terminal, then I suppose it might be quicker to reinstall than to diagnose whether you borked something. If you do want to reinstall from .deb, I expect you’ve seen the guide here … sing-linux .

Thanks so much for the reply!

  1. Yes, I installed libaspell-dev and libaspell15.
  2. Yes, sorry I forgot to specify, system language is US English. I do have the “English (United States)” dictionary selected in the Scrivener Corrections settings.
  3. I did install Scrivener using the .deb. And yes I did use the guide that you have linked to.

I notice in edf’s post ([url]A Mostly Complete Guide to Installing Scrivener on Linux]) the paths for Scrivener look like /usr/local/LiteratureAndLatte/lib but on my system it is /usr/share/scrivener/lib – did I somehow install Scrivener in the wrong place?

That’s the normal place for an Ubuntu .deb install. See point 8 of the post to which you linked: … 89#p159217

But if you followed the earlier part of edf’s post and created symlinks for libaspell using /usr/local paths then that would be a problem for you, since you installed from .deb.

It sounds like you’ve looked at and followed this post, but just to be sure: … 15#p172769

If that fails, this has more information: … 15#p170791

I did change everything to the usr/share/scrivener path so I think I am clear on that front. I’ve been trying to get through the steps on the third link you posted [url]comparison to other word processors and writing tools] and I think I have done everything correctly up to the updating of the Scrivener launch script. Here is what I attempted to enter and the result:

coderoot@localhost:/usr/share/scrivener/lib# ASPELL_CONF=‘prefix /usr/share/scrivener’
(precise)root@localhost:/usr/share/scrivener/lib# PATH=“/usr/share/scrivener/bin:$PATH”
(precise)root@localhost:/usr/share/scrivener/lib# export ASPELL_CONF PATH
(precise)root@localhost:/usr/share/scrivener/lib# /usr/share/scrivener/bin/
X Error: BadAccess (attempt to access private resource denied) 10
Extension: 130 (MIT-SHM)
Minor opcode: 1 (X_ShmAttach)
Resource id: 0x10c
X Error: BadShmSeg (invalid shared segment parameter) 128
Extension: 130 (MIT-SHM)
Minor opcode: 5 (X_ShmCreatePixmap)
Resource id: 0x1a6
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x3000011
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x3000011
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
Major opcode: 62 (X_CopyArea)
Resource id: 0x3000011[/code]

Scrivener opens a New Project window but it is blank. My only option is to close it. When I do so, I get the following code in the terminal:

*** glibc detected *** /usr/share/scrivener/bin/Scrivener: double free or corruption (fasttop): 0x099ee090 *** ======= Backtrace: ========= /lib/i386-linux-gnu/[0xf433ff82] /usr/lib/i386-linux-gnu/[0xf456751f] /usr/share/scrivener/bin/../lib/[0xf462af80] /lib/i386-linux-gnu/[0xf42fdf2b] /usr/share/scrivener/bin/../lib/[0xf6e52044] /usr/share/scrivener/bin/../lib/[0xf6fdd8cd] /lib/i386-linux-gnu/[0xf42fdb81] ======= Memory map: ======== 08048000-090e7000 r-xp 00000000 b3:01 399744 /usr/share/scrivener/bin/Scrivener 090e7000-090f4000 r--p 0109e000 b3:01 399744 /usr/share/scrivener/bin/Scrivener 090f4000-09112000 rw-p 010ab000 b3:01 399744 /usr/share/scrivener/bin/Scrivener 09112000-09114000 rw-p 00000000 00:00 0 099ea000-0b0cb000 rw-p 00000000 00:00 0 [heap] ef8fe000-ef8ff000 ---p 00000000 00:00 0 ef8ff000-f00ff000 rw-p 00000000 00:00 0 f00ff000-f0100000 ---p 00000000 00:00 0 f0100000-f0900000 rw-p 00000000 00:00 0 f0900000-f0921000 rw-p 00000000 00:00 0 f0921000-f0a00000 ---p 00000000 00:00 0 f12f0000-f1721000 rw-p 00000000 00:00 0 f1721000-f1800000 ---p 00000000 00:00 0 f18b6000-f18b7000 ---p 00000000 00:00 0 f18b7000-f21b7000 rw-p 00000000 00:00 0 f21b7000-f21b8000 ---p 00000000 00:00 0 f21b8000-f29b8000 rw-p 00000000 00:00 0 [stack:5401] f2b00000-f2b21000 rw-p 00000000 00:00 0 f2b21000-f2c00000 ---p 00000000 00:00 0 f2c38000-f2c3d000 r-xp 00000000 b3:01 399144 /lib/i386-linux-gnu/ f2c3d000-f2c3e000 r--p 00004000 b3:01 399144 /lib/i386-linux-gnu/ f2c3e000-f2c3f000 rw-p 00005000 b3:01 399144 /lib/i386-linux-gnu/ f2c3f000-f2c4a000 r-xp 00000000 b3:01 399049 /lib/i386-linux-gnu/ f2c4a000-f2c4b000 r--p 0000a000 b3:01 399049 /lib/i386-linux-gnu/ f2c4b000-f2c4c000 rw-p 0000b000 b3:01 399049 /lib/i386-linux-gnu/ f2c4c000-f2c5f000 r-xp 00000000 b3:01 530787 /lib32/ f2c5f000-f2c60000 r--p 00012000 b3:01 530787 /lib32/ f2c60000-f2c61000 rw-p 00013000 b3:01 530787 /lib32/ f2c61000-f2c63000 rw-p 00000000 00:00 0 f2c79000-f2c80000 rw-p 00000000 00:00 0 f2c80000-f2c84000 rwxp 00000000 00:00 0 f2c84000-f2c85000 ---p 00000000 00:00 0 f2c85000-f3485000 rw-p 00000000 00:00 0 f3578000-f3579000 rw-p 00000000 00:00 0 f3579000-f3585000 r-xp 00000000 b3:01 404360 /usr/share/scrivener/bin/bearer/ f3585000-f3586000 r--p 0000b000 b3:01 404360 /usr/share/scrivener/bin/bearer/ f3586000-f3587000 rw-p 0000c000 b3:01 404360 /usr/share/scrivener/bin/bearer/ f3587000-f35b7000 rw-p 00000000 00:00 0 f35b7000-f360f000 r-xp 00000000 b3:01 403993 /usr/share/scrivener/bin/imageformats/ f360f000-f3610000 ---p 00058000 b3:01 403993 /usr/share/scrivener/bin/imageformats/ f3610000-f3612000 r--p 00058000 b3:01 403993 /usr/share/scrivener/bin/imageformats/ f3612000-f3613000 rw-p 0005a000 b3:01 403993 /usr/share/scrivener/bin/imageformats/ f3613000-f3617000 r-xp 00000000 b3:01 403998 /usr/share/scrivener/bin/imageformats/ f3617000-f3618000 r--p 00003000 b3:01 403998 /usr/share/scrivener/bin/imageformats/ f3618000-f3619000 rw-p 00004000 b3:01 403998 /usr/share/scrivener/bin/imageformats/ f3619000-f366c000 r-xp 00000000 b3:01 404422 /usr/share/scrivener/lib/ f366c000-f366d000 r--p 00053000 b3:01 404422 /usr/share/scrivener/lib/ f366d000-f366e000 rw-p 00054000 b3:01 404422 /usr/share/scrivener/lib/ f366e000-f3672000 r-xp 00000000 b3:01 403992 /usr/share/scrivener/bin/imageformats/ f3672000-f3673000 r--p 00003000 b3:01 403992 /usr/share/scrivener/bin/imageformats/ f3673000-f3674000 rw-p 00004000 b3:01 403992 /usr/share/scrivener/bin/imageformats/ f3674000-f36d2000 r-xp 00000000 b3:01 403996 /usr/share/scrivener/bin/imageformats/ f36d2000-f36d4000 r--p 0005d000 b3:01 403996 /usr/share/scrivener/bin/imageformats/ f36d4000-f36d5000 rw-p 0005f000 b3:01 403996 /usr/share/scrivener/bin/imageformats/ f36d5000-f3710000 r-xp 00000000 b3:01 403997 /usr/share/scrivener/bin/imageformats/ f3710000-f3711000 r--p 0003a000 b3:01 403997 /usr/share/scrivener/bin/imageformats/ f3711000-f3712000 rw-p 0003b000 b3:01 403997 /usr/share/scrivener/bin/imageformats/ f3712000-f3721000 r-xp 00000000 b3:01 414751 /usr/lib/i386-linux-gnu/ f3721000-f3722000 r--p 0000e000 b3:01 414751 /usr/lib/i386-linux-gnu/ f3722000-f3723000 rw-p 0000f000 b3:01 414751 /usr/lib/i386-linux-gnu/ f3723000-f372c000 r-xp 00000000 b3:01 414740 /usr/lib/i386-linux-gnu/ f372c000-f372d000 r--p 00008000 b3:01 414740 /usr/lib/i386-linux-gnu/ f372d000-f372e000 rw-p 00009000 b3:01 414740 /usr/lib/i386-linux-gnu/ f372e000-f3732000 r-xp 00000000 b3:01 414514 /usr/lib/i386-linux-gnu/ f3732000-f3733000 r--p 00004000 b3:01 414514 /usr/lib/i386-linux-gnu/ f3733000-f3734000 rw-p 00005000 b3:01 414514 /usr/lib/i386-linux-gnu/ f3734000-f373b000 r-xp 00000000 b3:01 414772 /usr/lib/i386-linux-gnu/ f373b000-f373c000 r--p 00006000 b3:01 414772 /usr/lib/i386-linux-gnu/ f373c000-f373d000 rw-p 00007000 b3:01 414772 /usr/lib/i386-linux-gnu/ f373d000-f373e000 rw-p 00000000 00:00 0 f373e000-f3742000 rwxp 00000000 00:00 0 f3742000-f3749000 r-xp 00000000 b3:01 403991 /usr/share/scrivener/bin/imageformats/ f3749000-f374a000 r--p 00006000 b3:01 403991 /usr/share/scrivener/bin/imageformats/ f374a000-f374b000 rw-p 00007000 b3:01 403991 /usr/share/scrivener/bin/imageformats/ f374b000-f3751000 r-xp 00000000 b3:01 403995 /usr/share/scrivener/bin/imageformats/ f3751000-f3752000 r--p 00005000 b3:01 403995 /usr/share/scrivener/bin/imageformats/ f3752000-f3753000 rw-p 00006000 b3:01 403995 /usr/share/scrivener/bin/imageformats/ f3753000-f3759000 r--s 00000000 b3:01 416639 /var/cache/fontconfig/945677eb7aeaf62f1d50efc3fb3ec7d8-le32d4.cache-3 f3759000-f3766000 r--s 00000000 b3:01 416513 /var/cache/fontconfig/d52a8644073d54c13679302ca1180695-le32d4.cache-3 f3766000-f376c000 rw-p 00000000 00:00 0 f376c000-f376f000 r-xp 00000000 b3:01 413632 /lib/i386-linux-gnu/ f376f000-f3770000 r--p 00002000 b3:01 413632 /lib/i386-linux-gnu/ f3770000-f3771000 rw-p 00003000 b3:01 413632 /lib/i386-linux-gnu/ f3771000-f3784000 r-xp 00000000 b3:01 399071 /lib/i386-linux-gnu/ f3784000-f3785000 ---p 00013000 b3:01 399071 /lib/i386-linux-gnu/ f3785000-f3786000 r--p 00013000 b3:01 399071 /lib/i386-linux-gnu/ f3786000-f3787000 rw-p 00014000 b3:01 399071 /lib/i386-linux-gnu/ f3787000-f3789000 rw-p 00000000 00:00 0 f3789000-f378b000 r-xp 00000000 b3:01 413723 /lib/i386-linux-gnu/ f378b000-f378c000 r--p 00002000 b3:01 413723 /lib/i386-linux-gnu/ f378c000-f378d000 rw-p 00003000 b3:01 413723 /lib/i386-linux-gnu/ f378d000-f37b3000 r-xp 00000000 b3:01 414109 /lib/i386-linux-gnu/ f37b3000-f37b4000 ---p 00026000 b3:01 414109 /lib/i386-linux-gnu/ f37b4000-f37b6000 r--p 00026000 b3:01 414109 /lib/i386-linux-gnu/ f37b6000-f37b7000 rw-p 00028000 b3:01 414109 /lib/i386-linux-gnu/ f37b7000-f37b8000 rw-p 00000000 00:00 0 f37b8000-f37f2000 r-xp 00000000 b3:01 407007 /lib/i386-linux-gnu/ f37f2000-f37f3000 r--p 00039000 b3:01 407007 /lib/i386-linux-gnu/ f37f3000-f37f4000 rw-p 0003a000 b3:01 407007 /lib/i386-linux-gnu/ f37f4000-f37f9000 r-xp 00000000 b3:01 406999 /usr/lib/i386-linux-gnu/ f37f9000-f37fa000 r--p 00004000 b3:01 406999 /usr/lib/i386-linux-gnu/ f37fa000-f37fb000 rw-p 00005000 b3:01 406999 /usr/lib/i386-linux-gnu/ f37fb000-f3943000 r-xp 00000000 b3:01 407159 /usr/lib/i386-linux-gnu/ f3943000-f3947000 r--p 00148000 b3:01 407159 /usr/lib/i386-linux-gnu/ f3947000-f3948000 rw-p 0014c000 b3:01 407159 /usr/lib/i386-linux-gnu/ f3948000-f3949000 rw-p 00000000 00:00 0 f3949000-f394c000 r-xp 00000000 b3:01 407148 /usr/lib/i386-linux-gnu/ f394c000-f394d000 r--p 00002000 b3:01 407148 /usr/lib/i386-linux-gnu/ f394d000-f394e000 rw-p 00003000 b3:01 407148 /usr/lib/i386-linux-gnu/ f394e000-f39d9000 r-xp 00000000 b3:01 407200 /usr/lib/i386-linux-gnu/ f39d9000-f39da000 r--p 0008a000 b3:01 407200 /usr/lib/i386-linux-gnu/ (core dumped)

Running back through all of the steps again, I have a feeling that maybe something is going wrong around step 4 of edf’s post?[url]A Mostly Complete Guide to Installing Scrivener on Linux]

Here is what happened at step 4, after step 3 seemed to go fine:

codematt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/share/scrivener/lib/
ln: failed to create symbolic link /usr/share/scrivener/lib/': File exists (precise)matt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/share/scrivener/lib/ ln: failed to create symbolic link /usr/share/scrivener/lib/’: File exists
(precise)matt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/lib/i386-linux-gnu/
ln: failed to create symbolic link /usr/lib/i386-linux-gnu/': File exists (precise)matt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/share/scrivener/lib/ ln: failed to create symbolic link /usr/share/scrivener/lib/’: File exists
(precise)matt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/share/scrivener/lib/
ln: failed to create symbolic link /usr/share/scrivener/lib/': File exists (precise)matt@localhost:~$ sudo ln -s /usr/share/scrivener/lib/ /usr/lib/i386-linux-gnu/ ln: failed to create symbolic link /usr/lib/i386-linux-gnu/’: File exists

I thought perhaps the file already existing is not a problem and so I tried moving on to step 5 with this code:

sudo rm /usr/share/scrivener/lib/aspell/*.rws sudo cp /var/lib/aspell/*.rws /usr/share/scrivener/lib/aspell/

And my results:

codematt@localhost:~$ sudo rm /usr/share/scrivener/lib/aspell/.rws
rm: cannot remove `/usr/share/scrivener/lib/aspell/
.rws’: No such file or directory
Seems the second line does nothing. Even when I try it by itself.

I tried to just move on to part B of the 5th step and got a permission denied response:

codematt@localhost:~$ echo ‘#!/bin/sh’ > /tmp/
bash: /tmp/ Permission denied
(precise)matt@localhost:~$ echo “ASPELL_CONF=‘prefix /usr/share/scrivener’” >> /tmp/
bash: /tmp/ Permission denied
(precise)matt@localhost:~$ echo ‘PATH=“/usr/share/scrivener/bin:$PATH”’ >> /tmp/
bash: /tmp/ Permission denied
(precise)matt@localhost:~$ echo export PATH ASPELL_CONF >> /tmp/
bash: /tmp/ Permission denied
(precise)matt@localhost:~$ chmod +x /tmp/
chmod: changing permissions of `/tmp/’: Operation not permitted
(precise)matt@localhost:~$ sudo /usr/sbin/aspell-autobuildhash --dry-run --force 2>&1 | grep zcat | sed -e ‘s/var/lib/usr/share/scrivener/lib/’ -e ‘s/usr/lib/usr/share/scrivener/lib/’ >> /tmp/
bash: /tmp/ Permission denied[/code]

Apologies for the information dump :blush: I appreciate your patience. I’m hoping that maybe something above will raise a red flag and you’ll know what I should try next…