View Full Version : TrueCrypt

24th September 2007, 09:31 AM
Hiya, I need to install TrueCrypt.
Though its way to hard on Fedora Core..
I can do it on Gentoo.. and on LFS.. but on Fedora core.. NO Way.. :/
Well I run Fedora 6 and I am Root. So I can do anything Id like.
I want to install Truecrypt.. and well ok. Ive tryed a couple of things but no good outcomes yet.
Ive tryed: http://www.centos.org/modules/newbb/viewtopic.php?topic_id=8757&forum=42
That tutorial. Its made for Fedora 6 but still it doesnt work.
When I try the RPMs it says I dont have the kernel installed.. (lol..) and Ive checked for the dir and yea it was there. So thats weird. And when I try to install the KernelSources from an Official RPM it keeps spamming "brewbuilder" doesnt exist.

Well my Question now is..

Can I install TrueCrypt on a FedoraCore6 Virtual PC?
And How? What am I doing wrong? :S
Hope someone can help :(

- Robin

24th September 2007, 10:32 AM
I dont know, but this guide here looks easier to follow and should apply to f6 ?????

24th September 2007, 01:23 PM
Ah yea I have found this one aswell.
Though I thought it would damage my system since its Aimed for FC7
And then I mean this part:

After trying I got a spamming floot of kojibuilder doesnt exist. So nah that doesnt work either.. :/

dr death
25th September 2007, 11:38 AM
You don't need the full kernel source, just 1 file.

Just install the kernel-devel rpm, and grab a copy of dm.h from the kernel source (find a copy on the web. I'll also attach a copy here).


Copy dm.h to the kernel tree (change for your version).
# cp dm.h /usr/src/kernels/

Extract the zip file and compile (the options that I chose are indicated below)
# cd truecrypt-4.3-source-code/Linux
# ./build.sh
Checking build requirements...
Linux kernel ( source directory [/usr/src/linux]: /usr/src/kernels/
Building kernel module... Done.
Building truecrypt... Done.

Install the software (options I chose are listed again)
# ./install.sh

Checking installation requirements...
Testing truecrypt... Done.

Install binaries to [/usr/bin]: /usr/local/bin
Install man page to [/usr/share/man]: /usr/local/share/man
Install user guide and kernel module to [/usr/share/truecrypt]: /usr/local/share/truecrypt
Allow non-admin users to run TrueCrypt [y/N]:
Installing kernel module... Done.
Installing truecrypt to /usr/local/bin... Done.
Installing man page to /usr/local/share/man/man1... Done.
Installing user guide to /usr/local/share/truecrypt/doc... Done.

27th September 2007, 08:57 AM
Well, ive tryed now with the kernel-devel pack.
And with your dm.h
I even asked on the forum I am normaly on (LinuxForums).
And, well I still cant get it right..
When I use it it says. wrong version need version 2.6.18-1.2798.fc6.
When i try to install that RPM.
it says I already have a newer version..
Aint there Binary versions? that work..?

Hope someone wants to help.


dr death
27th September 2007, 09:08 AM
Could you give some more information?

What is the output of:
# uname -r
# rpm -q kernel kernel-devel

Also copy and paste the output of "build.sh"

27th September 2007, 10:32 AM
uname -r gives
rpm -q gives not installed
and build.sh does: Error: Kernel Source version in /usr/src/kernels/ is not

Thanks already.. ^^

dr death
27th September 2007, 10:47 AM
The command

rpm -q kernel kernel-devel

should print the versions of the kernel that you have installed. Try again in case you mistyped the command. You should at least have the kernel installed...

rpm -ql kernel-devel
will tell you where the headers are installed (but won't do much if you don't have the package installed).

Otherwise, maybe the path for the headers that I gave you is wrong (I don't have a FC6 system to look at). Do a
# ls -l /lib/modules/
and see where build is pointing to.

27th September 2007, 11:18 AM
rpm -q does:

rpm -ql kernel-devel does:
ALOT.. mainly its /usr/src/kernels/

ls -l does:
build -> ../../../usr/src/kernels/
source -> build
Those are pink..

well, I have no idea what I am doing right now..
I havnt looked into the Linux-Kernel yet.. I think Im going to buy a book about it.
Anywho, all the help is really appriciated.
Thanks alot..

dr death
27th September 2007, 11:26 AM
OK. Seems right.

Did you copy dm.h to the correct location?
# cp dm.h /usr/src/kernels/

When you run build.sh, and it asks
Linux kernel ( source directory [/usr/src/linux]:
do you type "/usr/src/kernels/"?

If so then I don't know why it is not reading the kernel version from the source correctly. I have been using truecrypt for quite a while now, and haven't had any problems compiling it every time a new kernel has come out...

27th September 2007, 11:56 AM
Oh, sorry I didnt do that yet.
I just pointed at the plain file.
Now it says:
Building Kernel module... line 155: cd Kernel: No such file or directory
Error: Failed to build kernel module..
Still doesnt work.. :(

Anywho, I own you already a favour now. ;)

dr death
27th September 2007, 12:02 PM
OK now we're getting somewhere. (It passes all the checks)

The "cd Kernel" error message is 1 of 2 problems

Either your truecrypt source download is corrupted, or you are not running build.sh from the Linux directory. I do

# cd truecrypt-4.3a-source-code/Linux
# ./build.sh

If you do
# cd truecrypt-4.3a-source-code/Linux
# ls

then you should see a directory named "Kernel", the build.sh script tries to change to that directory, so if it is failing, it's either not there, or you are not starting off at the correct location.

27th September 2007, 12:14 PM
New Error:
Building kernel Module.. /root/truecryptsource/Linux/Kernel/Dm-target.c: In function 'truecrypt_map'
Then some errors in Dm-target.c file:
Dereferencing pointer to incomplete type spawns often..
At the end it says:
make[2]: *** [/root/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.o] Error 1
make[1]: *** [_module_/root/truecrypt-4.3a-source-code/Linux/Kernel] Error 2
make: *** [truecrypt] Error 2

dr death
27th September 2007, 12:37 PM
I've never had compilation errors...

The function truecrypt_map() does reference variables defined in dm.h. So I tried to download the file that I posted here and it seems to be corrupted. Let me try again...

Still doesn't work. There is a version available here:

27th September 2007, 01:07 PM
So, when I use that dm.h file it should work?

dr death
27th September 2007, 01:11 PM
It should (but who knows). I checked, and it is the same as the file that I uploaded (which I got from the kernel source). I just seem to be unable to upload a file to this forum without it being corrupted.

27th September 2007, 01:14 PM

If I can help you something... Anything atall.
Contact me at Linux Forums ^^

Thanks again.. :)

28th September 2007, 06:53 PM
If anyone is interested, I have RPM's, i686, for Truecrypt built against the kernel. If if interested PM me and I will send them to you.

30th September 2007, 03:24 PM
It seems Truecrypt is broken by kernel. I had it working up until 7-85 but now I just get segmentation faults when trying to access a TC volume.

I rebuilt Truecrypt from source which worked fine (and I have the up to date kernel-devel). modprobe truecrypt works. But the same error when accessing volumes.

Any chance truecrypt could be supported through livna or similar? Is there a way of requesting this officially? Would be handy if kernel updates break it to have it kept up to date.

30th September 2007, 07:45 PM
It works well on my system. I also have RPM's compiled against If anyone is interested PM me.

4th October 2007, 09:50 AM
I kept getting this error and I solved it by editing Dm-target.c and going to line 659 and removing the last NULL in the function parameters list. Apparently someone in the kernel sphere modified the params list and then changed it back; here's the background info http://lkml.org/lkml/2007/7/29/187. After running build.sh it worked fine.

Checking build requirements...
Building kernel module... /root/software/src/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.c: In function ‘dm_truecrypt_init’:
/root/software/src/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.c:659: error: too many arguments to function ‘kmem_cache_create’
make[2]: *** [/root/software/src/truecrypt-4.3a-source-code/Linux/Kernel/Dm-target.o] Error 1
make[1]: *** [_module_/root/software/src/truecrypt-4.3a-source-code/Linux/Kernel] Error 2
make: *** [truecrypt] Error 2
Error: Failed to build kernel module

6th February 2008, 09:32 PM
i use this threat to post my problem although i try to install truecrypt 5. hope this doesn't matter.

i followed the instructions in the readmefile. afer successfully building the wxwidgets libs i tryed to make truecrypt and got this error:

Compiling Buffer.cpp
StringConverter.h:23: error: ‘static std::wstring TrueCrypt::StringConverter::FromNumber(long int)’ cannot be overloaded
StringConverter.h:22: error: with ‘static std::wstring TrueCrypt::StringConverter::FromNumber(TrueCrypt:: int64)’
StringConverter.h:26: error: ‘static std::wstring TrueCrypt::StringConverter::FromNumber(TrueCrypt:: uint64)’ cannot be overloaded
StringConverter.h:25: error: with ‘static std::wstring TrueCrypt::StringConverter::FromNumber(long unsigned int)’
make[1]: *** [Buffer.o] Error 1
make: *** [all] Error 2
can anyone help
(there is no difference running as root)

i use fedora 8 x86_64

edit: StringConverter.h

9#ifndef TC_HEADER_Platform_StringConverter
10#define TC_HEADER_Platform_StringConverter
12#include <stdlib.h>
13#include "PlatformBase.h"
15namespace TrueCrypt
17 class StringConverter
18 {
19 public:
20 static wstring FromNumber (double number);
21 static wstring FromNumber (int number);
22 static wstring FromNumber (int64 number);
23 static wstring FromNumber (long number);
24 static wstring FromNumber (unsigned int number);
25 static wstring FromNumber (unsigned long number);
26 static wstring FromNumber (uint64 number);
27 static string GetTrailingNumber (const string &str);
28 static string GetTypeName (const type_info &typeInfo);
29 static wstring QuoteSpaces (const wstring &str);
30 static vector <string> Split (const string &str, const string &separators = " \t\r\n", bool returnEmptyFields = false);
31 static wstring ToExceptionString (const exception &ex);
32 static uint32 ToUInt32 (const string &str);
33 static uint32 ToUInt32 (const wstring &str);
34 static uint64 ToUInt64 (const string &str);
35 static uint64 ToUInt64 (const wstring &str);
36 static string ToSingle (const wstring &str, bool noThrow = false);
37 static wstring ToWide (const string &str, bool noThrow = false);
38 static void ToWideBuffer (const wstring &str, wchar_t *buffer, size_t bufferSize);
39 static string Trim (const string &str);
41 private:
42 StringConverter ();
43 };

7th February 2008, 12:37 AM
i can't seem to get truecrypt 5 installed either on F7

[root@localhost truecrypt-5.0]# rpm -Uvh truecrypt-5.0-0.i586.rpm
error: Failed dependencies:
libfuse2 is needed by truecrypt-5.0-0.i586
libstdc++.so.6(GLIBCXX_3.4.9) is needed by truecrypt-5.0-0.i586

7th February 2008, 03:31 AM
BehindTheTruth- the problem is with 64 bit. I had the same issue and found a patch on Ubuntu forums. I've attached it. Go into the truecrypt source directory and issue:

patch -p0 < ../path/to/the/patch/file/truecrypt-5.0-source.patch

Then follow the Linux install instructions in the Readme.txt.

7th February 2008, 03:33 AM
DigitalDuality- see my reply to your post here:


7th February 2008, 07:23 AM
your patch solved my first error but now i get a new one.

Compiling MainFrame.cpp
Forms/MainFrame.cpp:23:32: error: TravelerDiskWizard.h: No such file or directory
In file included from Forms/MainFrame.cpp:24:
Forms/VolumeCreationWizard.h:13:44: error: TravelerMountOptionsWizardPage.h: No such file or directory
make[1]: *** [Forms/MainFrame.o] Error 1
make: *** [all] Error 2

these files really do not exist, not even in the archive from the tc homepage

9th February 2008, 02:07 AM
BTT, I believe that file is only supposed to be compiled on windows compiles. I have never gotten that error before. You might try doing a "make clean" from inside the source directory and then doing "make" again. Also, this guy is making rpms available here, but in order to be truly secure, you really need to compile it yourself: