Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230

 

 

 

DSO missing from command line truecrypt

Programming languages, Coding, Executables, Package Creation, and Scripting.
Message
Author
lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

DSO missing from command line truecrypt

#1 Post by lilDebbie »

What's up guys so I've been trying too compile truecrypt 7.1a on Debian Jessie 8.1.0 AMD64 for the past two days now....yes you heard that right lol I've done everything i could think of researching nonstop along the way and frankly I'm starting to get pissed at blogs saying hit make and enjoy here is where I'm at now. I have wxGTK2.8.12 source because geniuses at deb Jessie only have v3.0 packages thats a problem because wxwidgets3.0 has protected wxstandardpaths so you have to use wxstandardpaths::get and truecrypt uses wxstandardpaths in application.cpp for example and would return an error while compiling. I'm not sure how to fix that so i went to option 2 compile wxgtk2.8.12 source using the truecrypt compile option make WX_ROOT=/usr/src/truecrypt-7.1a-source/wxGTK-2.8.12 wxbuild. That completes than i run make WXSTATIC=1 and i run into this error below. Even if i compile and install wxwidgets-2.8.12 myself i get this error. Maybe It's a x11lib issue? idk. Please help me i know you guys are smart.
I have also tried to type -lx11 into the command line after that error and it says bash: -lx11: command not found

^
Linking truecrypt
/usr/bin/ld: /usr/src/truecrypt-7.1a-source/wxrelease/lib/libwx_gtk2u_core-2.8.a(corelib_utilsx11.o): undefined reference to symbol 'XGetWindowAttributes'
//usr/lib/x86_64-linux-gnu/libX11.so.6: error adding symbols: DSO missing from command line
collect2: error: ld returned 1 exit status
Main.make:107: recipe for target 'truecrypt' failed
make[1]: *** [truecrypt] Error 1
Makefile:268: recipe for target 'all' failed
make: *** [all] Error 2

tomazzi
Posts: 730
Joined: 2013-08-02 21:33

Re: DSO missing from command line truecrypt

#2 Post by tomazzi »

It seems to be a classic circular dependancy problem:
dso-missing-from-command-line

You have to modify the make script or use custom LDFLAGS/CFLAGS for configure.

Regards.
Odi profanum vulgus

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#3 Post by lilDebbie »

Thankyou but how exactly would i do that? Truecrypt doesn't have configure files just a make file as far as i can see. How would i modify that exactly? I've read that link you sent before and i know it's related to my problem but could not figure out what exactly to type into my command line or what to do really. I tried taking information from other blogs and applying it to my situation but i don't fully understand linking libs yet so i cant figure this thing out without more specifics. Here is the make file.
#------ Targets ------
# all
# clean
# wxbuild: Configure and build wxWidgets - source code must be located at $(WX_ROOT)


#------ Build configuration ------

export APPNAME := truecrypt
export BASE_DIR := $(CURDIR)
export BUILD_INC := $(BASE_DIR)/Build/Include

export AR ?= ar
export CC ?= gcc
export CXX ?= g++
export AS := nasm
export RANLIB ?= ranlib

export CFLAGS := -Wall
export CXXFLAGS := -Wall -Wno-unused-parameter
C_CXX_FLAGS := -MMD -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES -I$(BASE_DIR) -I$(BASE_DIR)/Crypto
export ASFLAGS := -Ox -D __GNUC__
export LFLAGS :=

export PKG_CONFIG_PATH ?= /usr/local/lib/pkgconfig

export WX_CONFIG ?= wx-config
export WX_CONFIG_ARGS := --unicode
WX_CONFIGURE_FLAGS :=
export WXCONFIG_CFLAGS :=
export WXCONFIG_CXXFLAGS :=
WX_ROOT ?= ..


export TC_BUILD_CONFIG := Release

ifeq "$(origin DEBUG)" "command line"
ifneq "$(DEBUG)" "0"
TC_BUILD_CONFIG := Debug
endif
endif

ifeq "$(origin NOGUI)" "command line"
export TC_NO_GUI := 1
C_CXX_FLAGS += -DTC_NO_GUI
WX_CONFIGURE_FLAGS += --disable-gui
endif

ifdef PKCS11_INC
C_CXX_FLAGS += -I$(PKCS11_INC)
endif

ifeq "$(origin RESOURCEDIR)" "command line"
C_CXX_FLAGS += -DTC_RESOURCE_DIR="$(RESOURCEDIR)"
endif

ifneq "$(origin VERBOSE)" "command line"
MAKEFLAGS += -s
endif

ifeq "$(origin WXSTATIC)" "command line"
WX_CONFIG = $(WX_BUILD_DIR)/wx-config
WX_CONFIG_ARGS += --static
endif


#------ Release configuration ------

ifeq "$(TC_BUILD_CONFIG)" "Release"

C_CXX_FLAGS += -O2 -fno-strict-aliasing # Do not enable strict aliasing
export WX_BUILD_DIR ?= $(BASE_DIR)/wxrelease
WX_CONFIGURE_FLAGS += --disable-debug_flag --disable-debug_gdb --disable-debug_info

else

#------ Debug configuration ------

C_CXX_FLAGS += -DDEBUG
CXXFLAGS += -fno-default-inline -Wno-unused-function -Wno-unused-variable
export WX_BUILD_DIR ?= $(BASE_DIR)/wxdebug
WX_CONFIGURE_FLAGS += --enable-debug_flag --disable-debug_gdb --disable-debug_info

endif


#------ Debugger configuration ------

ifeq "$(origin DEBUGGER)" "command line"

C_CXX_FLAGS += -ggdb
WX_CONFIGURE_FLAGS += --enable-debug_gdb --enable-debug_info

endif


#------ Platform configuration ------

export PLATFORM := "Unknown"
export PLATFORM_UNSUPPORTED := 0

export CPU_ARCH ?= unknown

ARCH = $(shell uname -p)
ifeq "$(ARCH)" "unknown"
ARCH = $(shell uname -m)
endif

ifneq (,$(filter i386 i486 i586 i686 x86,$(ARCH)))
CPU_ARCH = x86
ASM_OBJ_FORMAT = elf32
else ifneq (,$(filter x86_64 x86-64 amd64 x64,$(ARCH)))
CPU_ARCH = x64
ASM_OBJ_FORMAT = elf64
endif

ifeq "$(origin NOASM)" "command line"
CPU_ARCH = unknown
endif

ifeq "$(CPU_ARCH)" "x86"
C_CXX_FLAGS += -D TC_ARCH_X86
else ifeq "$(CPU_ARCH)" "x64"
C_CXX_FLAGS += -D TC_ARCH_X64
endif


#------ Linux configuration ------

ifeq "$(shell uname -s)" "Linux"

PLATFORM := Linux
C_CXX_FLAGS += -DTC_UNIX -DTC_LINUX

ifeq "$(TC_BUILD_CONFIG)" "Release"
C_CXX_FLAGS += -fdata-sections -ffunction-sections
LFLAGS += -Wl,--gc-sections

ifneq "$(shell ld --help 2>&1 | grep sysv | wc -l)" "0"
LFLAGS += -Wl,--hash-style=sysv
endif

WXCONFIG_CFLAGS += -fdata-sections -ffunction-sections
WXCONFIG_CXXFLAGS += -fdata-sections -ffunction-sections
endif

endif


#------ Mac OS X configuration ------

ifeq "$(shell uname -s)" "Darwin"

PLATFORM := MacOSX
APPNAME := TrueCrypt

TC_OSX_SDK ?= /Developer/SDKs/MacOSX10.4u.sdk
CC := gcc-4.0
CXX := g++-4.0

C_CXX_FLAGS += -DTC_UNIX -DTC_BSD -DTC_MACOSX -mmacosx-version-min=10.4 -isysroot $(TC_OSX_SDK)
LFLAGS += -mmacosx-version-min=10.4 -Wl,-syslibroot $(TC_OSX_SDK)
WX_CONFIGURE_FLAGS += --with-macosx-version-min=10.4 --with-macosx-sdk=$(TC_OSX_SDK)

ifeq "$(CPU_ARCH)" "x64"
CPU_ARCH = x86
endif

ASM_OBJ_FORMAT = macho
ASFLAGS += --prefix _

ifeq "$(TC_BUILD_CONFIG)" "Release"

export DISABLE_PRECOMPILED_HEADERS := 1

S := $(C_CXX_FLAGS)
C_CXX_FLAGS = $(subst -MMD,,$(S))

C_CXX_FLAGS += -gfull -arch i386 -arch ppc
LFLAGS += -Wl,-dead_strip -arch i386 -arch ppc

WX_CONFIGURE_FLAGS += --enable-universal_binary
WXCONFIG_CFLAGS += -gfull
WXCONFIG_CXXFLAGS += -gfull

else

WX_CONFIGURE_FLAGS += --disable-universal_binary

endif

endif


#------ FreeBSD configuration ------

ifeq "$(shell uname -s)" "FreeBSD"

PLATFORM := FreeBSD
PLATFORM_UNSUPPORTED := 1
C_CXX_FLAGS += -DTC_UNIX -DTC_BSD -DTC_FREEBSD

endif


#------ Solaris configuration ------

ifeq "$(shell uname -s)" "SunOS"

PLATFORM := Solaris
PLATFORM_UNSUPPORTED := 1
C_CXX_FLAGS += -DTC_UNIX -DTC_SOLARIS
WX_CONFIGURE_FLAGS += --with-gtk

endif


#------ Common configuration ------

CFLAGS := $(C_CXX_FLAGS) $(CFLAGS) $(TC_EXTRA_CFLAGS)
CXXFLAGS := $(C_CXX_FLAGS) $(CXXFLAGS) $(TC_EXTRA_CXXFLAGS)
ASFLAGS += -f $(ASM_OBJ_FORMAT)
LFLAGS := $(LFLAGS) $(TC_EXTRA_LFLAGS)

WX_CONFIGURE_FLAGS += --enable-unicode -disable-shared --disable-dependency-tracking --disable-compat26 --enable-exceptions --enable-std_string --enable-dataobj --enable-mimetype \
--disable-protocol --disable-protocols --disable-url --disable-ipc --disable-sockets --disable-fs_inet --disable-ole --disable-docview --disable-clipboard \
--disable-help --disable-html --disable-mshtmlhelp --disable-htmlhelp --disable-mdi --disable-metafile --disable-webkit \
--disable-xrc --disable-aui --disable-postscript --disable-printarch \
--disable-arcstream --disable-fs_archive --disable-fs_zip --disable-tarstream --disable-zipstream \
--disable-animatectrl --disable-bmpcombobox --disable-calendar --disable-caret --disable-checklst --disable-collpane --disable-colourpicker --disable-comboctrl \
--disable-datepick --disable-display --disable-dirpicker --disable-filepicker --disable-fontpicker --disable-grid --disable-dataviewctrl \
--disable-listbook --disable-odcombobox --disable-sash --disable-searchctrl --disable-slider --disable-splitter --disable-togglebtn \
--disable-toolbar --disable-tbarnative --disable-treebook --disable-toolbook --disable-tipwindow --disable-popupwin \
--disable-commondlg --disable-aboutdlg --disable-coldlg --disable-finddlg --disable-fontdlg --disable-numberdlg --disable-splash \
--disable-tipdlg --disable-progressdlg --disable-wizarddlg --disable-miniframe --disable-tooltips --disable-splines --disable-palette \
--disable-richtext --disable-dialupman --disable-debugreport --disable-filesystem \
--disable-graphics_ctx --disable-sound --disable-mediactrl --disable-joystick --disable-apple_ieee \
--disable-gif --disable-pcx --disable-tga --disable-iff --disable-gif --disable-pnm \
--without-expat --without-libtiff --without-libjpeg --without-libpng -without-regex --without-zlib


#------ Project build ------

PROJ_DIRS := Platform Volume Driver/Fuse Core Main

.PHONY: all clean wxbuild

all clean:
@if pwd | grep -q ' '; then echo 'Error: source code is stored in a path containing spaces' >&2; exit 1; fi

@for DIR in $(PROJ_DIRS); do \
PROJ=$$(echo $$DIR | cut -d/ -f1); \
$(MAKE) -C $$DIR -f $$PROJ.make NAME=$$PROJ $(MAKECMDGOALS) || exit $?; \
export LIBS="$(BASE_DIR)/$$DIR/$$PROJ.a $$LIBS"; \
done


#------ wxWidgets build ------

ifeq "$(MAKECMDGOALS)" "wxbuild"
CFLAGS :=
CXXFLAGS :=
LFLAGS :=
endif

wxbuild:

ifneq "$(shell test -f $(WX_ROOT)/configure || test -f $(WX_BUILD_DIR)/../configure && echo 1)" "1"
@echo 'Error: WX_ROOT must point to wxWidgets source code directory' >&2
@exit 1
endif

rm -rf "$(WX_BUILD_DIR)"
mkdir -p "$(WX_BUILD_DIR)"
@echo Configuring wxWidgets library...
cd "$(WX_BUILD_DIR)" && "$(WX_ROOT)/configure" $(WX_CONFIGURE_FLAGS) >/dev/null

@echo Building wxWidgets library...
cd "$(WX_BUILD_DIR)" && $(MAKE)

tomazzi
Posts: 730
Joined: 2013-08-02 21:33

Re: DSO missing from command line truecrypt

#4 Post by tomazzi »

In fact, the link which I have posted previously, contains a possible solution for Your problem:
The linker has to be informed that particular DSOs can have circular dependancies, so they should be scanned several times, until all the dependancies are resolved.
This is achieved by using special linker argument syntax:

Code: Select all

-Wl,--start-group -l_libA -l_libB ... -l_libX -Wl,--end-group
or:

Code: Select all

-Wl,-( -l_libA -l_libB ... -l_libX -Wl,-)
In the makefile, which You have posted above, I would try to add the aforementioned linker options in the section "Linux configuration", by adding a line:
(below this one): LFLAGS += -Wl,--hash-style=sysv

Code: Select all

LFLAGS += -Wl,-( -llibwx_gtk2u_core-2.8  -lX11 -Wl,-)
NOTE: no spaces are allowed between "-Wl," and the "--start-group" or "-(" , etc.

PS.
Btw, why not use ecryptfs? - it's far more flexible IMO, and it's available as a ready to install package.

Second: I would try to compile the wxWidgets as a shared lib (as the truecrypt is trying to use a static version, it'll produce a huge executable, for no real benefits).

Regards.
Odi profanum vulgus

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#5 Post by lilDebbie »

Thank you so much for your help this far! I edited the make file like so and got this error so im not sure what i did wrong exactly i did exactly as you said. root@User:/usr/src/truecrypt-7.1a-source# make WXSTATIC=1
Linking truecrypt
/bin/sh: 1: Syntax error: "(" unexpected
Main.make:107: recipe for target 'truecrypt' failed
make[1]: *** [truecrypt] Error 2
Makefile:270: recipe for target 'all' failed
make: *** [all] Error 2


#------ Linux configuration ------

ifeq "$(shell uname -s)" "Linux"

PLATFORM := Linux
C_CXX_FLAGS += -DTC_UNIX -DTC_LINUX

ifeq "$(TC_BUILD_CONFIG)" "Release"
C_CXX_FLAGS += -fdata-sections -ffunction-sections
LFLAGS += -Wl,--gc-sections


ifneq "$(shell ld --help 2>&1 | grep sysv | wc -l)" "0"
LFLAGS += -Wl,--hash-style=sysv
LFLAGS += -Wl,-( -llibwx_gtk2u_core-2.8 -lX11 -Wl,-)
endif

WXCONFIG_CFLAGS += -fdata-sections -ffunction-sections
WXCONFIG_CXXFLAGS += -fdata-sections -ffunction-sections
endif

endif


#------ Mac OS X configuration ------

tomazzi
Posts: 730
Joined: 2013-08-02 21:33

Re: DSO missing from command line truecrypt

#6 Post by tomazzi »

Can You give me the link to the truecrypt sources, which You're using? - so I could check what's going on in a VM (I'm not using jessie as a base system atm).
Odi profanum vulgus

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#7 Post by lilDebbie »

https://www.grc.com/misc/truecrypt/True ... rce.tar.gz I've verified the checksums and the signature but your welcome to reverify if you like here is the link for the checksums https://defuse.ca/truecrypt-7.1a-hashes.htm it's a pain in the ass since the original truecrypt website only hosts tc-7.2 and it only decrypts because they shut down. I'm using wxwidgets 2.8.12 source which you can get from there website if you use wxwidgets 3.0 you will run into the problems i stated in my op and thankyou again hopefully you will see what's going on.

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#8 Post by stevepusser »

Have you thought about Veracrypt instead?

They may have fixed that problem in the code.

There's a PPA that has version 1.14 in it, you may be able to adapt their debian folder to build 1.16 packages.
MX Linux packager and developer

tomazzi
Posts: 730
Joined: 2013-08-02 21:33

Re: DSO missing from command line truecrypt

#9 Post by tomazzi »

I've just compiled wxGTK v2.8.12 on Jessie_amd64, and no special tricks are needed.
Definitely, You need to install libgtk2.0-dev - it is sufficient to have most of the wxGTK functionalities working.
Then, You simply "configure", "make" and "make install" the libs.

For convenience, it's better to change the default install path:

Code: Select all

./configure --prefix=/usr/lib
Thanks to this, You won't need to change ldconfig settings.

I'll check the truecrypt compilation later (I need more time for this)

Regards.
Odi profanum vulgus

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#10 Post by stevepusser »

Proper deb packages for xwidgets 2.8, compatible with Jessie, are available in the MX 15 repository.

I found another PPA with Veracrypt 1.16 packages and debianized source, so I'm building packages for the MX 15 repo that will also be Jessie-compatible...

I uploaded debianized source files and the 64-bit deb package of veracypt 1.16 here: https://drive.google.com/file/d/0BxE7wb ... sp=sharing

The orig.tar.xz file is the renamed veracypt source tarball from sourceforge--the cautious can download and rename it for themselves instead of just trusting me, and follow the general guide to building their own packages I put in this thread: http://forums.debian.net/viewtopic.php?f=16&t=126819
MX Linux packager and developer

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#11 Post by lilDebbie »

cool I've got libgtk2.0-dev installed from the deb packages and your right wx 2.8.12 compiles and installs easily. I'm interested in seeing what you find out about the tc compile. Also for those asking if i want to use veracrypt no thanks truecrypt's source is the only os crypto product that i know of thats been audited. I am interested in veracrypt's code tho i would like to see exactly what they've added on top of truecrypt's code besides just bug fixes. opensource can be backdoored just as easily as closed because audit's are few and far between and few people actually have the skill to audit code for backdoor's or smartbugs on crypto software so it would be easier to hide it for years even before there found and by then it's too late they've already got your secrets. I hope that a fork can become audited so we can trust that one as well. I agree truecrypt deff needs a fork and I'm glad they are creating them the only question i have is can we trust them? my fav feature of truecrypt is the rubberhose cryptanalysis defense : ) .

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#12 Post by lilDebbie »

Thanks steve I'll take a look at your work. But i still would like to get truecrypt running from source just so i have it available and can use it and I'll probably make a tutorial to help other people looking to do the same thing. Sadly its become personal at this point to where I'm not gonna stop until this thing is compiled lol Why is compiling things on debian so hard? ive tried compiling handbrake 10.3 didn't work so i've got to fix that Ive tried the newest version of wine that didn't work either lol why cant i just hit make like all the blogs say haha

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#13 Post by stevepusser »

lilDebbie wrote:Thanks steve I'll take a look at your work. But i still would like to get truecrypt running from source just so i have it available and can use it and I'll probably make a tutorial to help other people looking to do the same thing. Sadly its become personal at this point to where I'm not gonna stop until this thing is compiled lol Why is compiling things on debian so hard? ive tried compiling handbrake 10.3 didn't work so i've got to fix that Ive tried the newest version of wine that didn't work either lol why cant i just hit make like all the blogs say haha
Those simple directions work in only a minority of packages, but usually the others will have better compilation instructions somewhere in the source. Like any technical subject, when you start to learn about it in depth, you find that it's much more complicated than it seems to a casual outsider--so most of those blogs have anal-cranial inversion. And anyway, building proper .deb packages is better in every way, and almost always much easier if you can find already Debianized source, such as in upstream Debian, Ubuntu, or in a PPA. Rebuilding already debianized source actually can follow a simple recipe, since the complicated stuff is automatically handled.

mikeinsantarosa and I are keeping up with new wine-staging releases for the MX and MEPIS repos, and have some experience with compiling it, so you probably have missing build-dependencies for Wine. You also have to watch out with Wine, since most users will want the 32-bit version...I think Wine still wants to build a cross-compiled 32-bit version on 64-bit, so it needs all kinds of i386 -dev packages and cross-compiling tools installed on 64-bit. When I do install those on a 64-bit Wheezy/MEPIS 12 base, I often have to pull some complicated tricks to get them all installed.

I've been waiting for handbrake 10.3 to appear in upstream Debian, it always has the best quality packaging, but it can also be sourced from a PPA or deb-multimedia. Deb-multimedia often needs some tweaking of the files in /debian, though.
MX Linux packager and developer

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#14 Post by stevepusser »

I would have to say the Veracrypt has fixed that bug in the Truecrypt code, so you're purposely making it harder than it needs to be. If you dig through the Veracrypt source, no doubt you can copy what they fixed to the Truecrypt source...
MX Linux packager and developer

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#15 Post by lilDebbie »

good info yea I'm working on handbrake for now I'm making progress with it. I wonder if there is a way to send it to the official repository for debian so other users will be able to have the newest handbrake available for jessie.That's a good idea about finding the bug fix and copying it to truecrypt source that's an option. And I've compiled debianized source before and your right it is way easier.

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#16 Post by stevepusser »

lilDebbie wrote:good info yea I'm working on handbrake for now I'm making progress with it. I wonder if there is a way to send it to the official repository for debian so other users will be able to have the newest handbrake available for jessie.That's a good idea about finding the bug fix and copying it to truecrypt source that's an option. And I've compiled debianized source before and your right it is way easier.
Debian packaging has a lot of policy requirements--one is to use the system libraries as far as possible, instead of building against the internal versions in the source. For example, this would mean building against the libav* -dev packages found in Debian instead of the internal libav supplied (downloaded by) in Handbrake. And I believe Debian also removes some code from the source because it violates the Debian free software guidelines or is unecessary.

Also, the handbrake source downloads some other source from the Net as part of the build process, which is against policy. Debian adds those files to the source tarball and disables the download, which is why the Debian upstream versions have "ds" added to the version.
Last edited by stevepusser on 2016-02-06 04:37, edited 1 time in total.
MX Linux packager and developer

tomazzi
Posts: 730
Joined: 2013-08-02 21:33

Re: DSO missing from command line truecrypt

#17 Post by tomazzi »

lilDebbie wrote:...Also for those asking if i want to use veracrypt no thanks truecrypt's source is the only os crypto product that i know of thats been audited.
The status is: Truecrypt v7.1a sources are *NOT* compatible with Debian Jessie (but also most likely with other distributions)
Reason: To compile this version of truecrypt, the sources has to be modified in a way, which is reducing the reliability of the code: namely, f.e. in the file Common/SecurityToken.cpp the lines 660 and 661 have to be commented-out, but this is only a tip of the iceberg, as there are more problems:
AES encryption is broken: the author didn't take care of explicit initialization of some crucial variables, what results in tens of warnings regarding the AES code (not just false positives - they are really a threat).

The author knows crap about building executables for MAC OS/Linux - the makefile was most probably tested only on his own PC - it needs several modifications to work on "supposedly supported" target systems.

I've stopped my tries after satisfying the following dependancies:
libp11-kit-dev
libfuse-dev
nasm

After those packages are installed, only the internal bugs in truecrypt are preventing successful compilation...

Regards.
Odi profanum vulgus

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#18 Post by lilDebbie »

do you think you could show me the log or logs of when you tried too compile truecrypt? I'm interested in seeing what your talking about and how the compile went for you

User avatar
stevepusser
Posts: 12930
Joined: 2009-10-06 05:53
Has thanked: 41 times
Been thanked: 71 times

Re: DSO missing from command line truecrypt

#19 Post by stevepusser »

So...Veracrypt, which seems to have fixed those bugs, right? I don't know diddly about the actual coding, but would be interested if you gave the relevant parts of the veracrypt source a glance to see if they know what they're doing.

Oddly enough, I can build Veracypt on a wheezy plus wheezy-backports 32-bit virtual machine, too, but something in the same 64-bit VM setup causes the whole VM to lockup during a build. I'll see if the same thing happens on another 64-bit gcc machine--it may just be incompatible with the 64-bit gcc-4.7 in Wheezy:

Code: Select all

g++: internal compiler error: Killed (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <file:///usr/share/doc/gcc-4.7/README.Bugs> for instructions.
MX Linux packager and developer

lilDebbie
Posts: 14
Joined: 2016-02-03 22:55

Re: DSO missing from command line truecrypt

#20 Post by lilDebbie »

stevepusser wrote:
lilDebbie wrote:good info yea I'm working on handbrake for now I'm making progress with it. I wonder if there is a way to send it to the official repository for debian so other users will be able to have the newest handbrake available for jessie.That's a good idea about finding the bug fix and copying it to truecrypt source that's an option. And I've compiled debianized source before and your right it is way easier.
Debian packaging has a lot of policy requirements--one is to use the system libraries as far as possible, instead of building against the internal versions in the source. For example, this would mean building against the ffmpeg -dev packages in jessie-backports instead of the internal ffmpeg supplied in Handbrake. And I believe Debian also removes some code from the source because it violates the Debian free software guidelines.

Also, the handbrake source downloads some other source from the Net as part of the build process, which is against policy. Debian adds those files to the source tarball and disables the download, which is why the Debian upstream versions have "ds" added to the version.
yea no wonder there's mostly older version's of stuff like handbrake and other software on there repos

Post Reply