03-21-2006
Streaming
Could it be that the compiler and/or linker uses streaming and so produces a different order of objects in the executable, which of course would then mean that the same source code could potentially produce different executables.
Regardless of the wording of "unnecessary" information, would there be other good reasons why sources a, b, c, d does not always produce the byte by byte same executable?
10 More Discussions You Might Find Interesting
1. Programming
I recently loaded SuSE on my intel comp.
I am presently taking a walk down memory lane from my days at UofT.
I was fiddling round with cc and the gcc compilers.
I wrote a basic basic basic program .
I tried to compile it as I remember doing in Uni. The problem is that it can't find the header... (5 Replies)
Discussion started by: cantcatchme
5 Replies
2. UNIX for Dummies Questions & Answers
would anyone know of a good online tutorial on compiling and installing tarballs? i'm looking for one that assumes that you know very little to nothing about unix. (3 Replies)
Discussion started by: nydel
3 Replies
3. UNIX for Dummies Questions & Answers
i am trying to compile and install free qt for x11 2.2.4 in order to use kde 2.1. i'm using freebsd 4.3
i currently have XFree86 installed and working.
i followed these instructions:
ftp://ftp.trolltech.com/qt/source/INSTALL
i get through the unpacking fine and i set my .profile.
--... (2 Replies)
Discussion started by: nydel
2 Replies
4. Programming
I am new to unix so please forgive ignorance. I am running openbsd-2.9 and need some help. All the software I run was added via the package system openbsd has. There have been times when I need an app. But it was not in the openbsd ports and or packages system. I usually just wait for it to show up... (1 Reply)
Discussion started by: Blunt_Killer
1 Replies
5. AIX
Hello,
i will compile php and apache on an aix 5.1. Configure works fine.
When i start the make the following error appears:
/usr/include/sys/context.h:155: parse error before "sigset64_t"
/usr/include/sys/context.h:158: parse error before '}' token
make: 1254-004 The error code from the... (1 Reply)
Discussion started by: n-may
1 Replies
6. HP-UX
I tried to compile the RRDtool on HP-UX (IA56). I have gcc-3.4.3 and perl 5.8.0
I got this:
Writing Makefile for RRDs
cd perl-shared && make
/opt/perl/bin/perl /opt/perl/lib/5.8.0/ExtUtils/xsubpp -typemap /opt/perl/lib/5.8.0/ExtUtils/typemap RRDs.xs > RRDs.xsc && mv... (2 Replies)
Discussion started by: Kalin
2 Replies
7. Solaris
Hi guys
i have posted a thread months ago and a guy called dukenuke or smething like that told me that i have to install Sun Studio if i want to be able to compile programs. I have installed Sun Studio 12 and put it in my PATH but no success compiling anything. when i download some source (tar.gz)... (2 Replies)
Discussion started by: saveka
2 Replies
8. Programming
Hi all,
I had trouble compiling my application with a custom dll, the error appear to be some undefined reference to the functions i had created in my dll. Is there a need to update any environmental variable such as LD_LIBRARY_PATH as in linux system. Please advise.
One more thing is do... (2 Replies)
Discussion started by: dwgi32
2 Replies
9. HP-UX
Hi
When im trying to do make --version and make --help in HP-UX
it throws error
Make: Unknown flag argument -. Stop.
a soft link is present in this directory /usr/bin/make
and hard link is in /usr/ccs/bin/make
what could be the reason can any1 ..please tell me how to solve this... (1 Reply)
Discussion started by: vasanthan
1 Replies
10. Linux
Hello, I have several questions to get awnsered about the newer linux kernels (2.6.25) and above.
1st question: Ive read that the newer kernels you can compile the marvell sd8686 driver from the source. can anyone confrim this? only binaries i see for that driver are for 2.6.24 and im already... (0 Replies)
Discussion started by: old noob
0 Replies
LEARN ABOUT DEBIAN
execstack
execstack(8) System Manager's Manual execstack(8)
NAME
execstack - tool to set, clear, or query executable stack flag of ELF binaries and shared libraries
SYNOPSIS
execstack [OPTION...] [FILES]
DESCRIPTION
execstack is a program which sets, clears, or queries executable stack flag of ELF binaries and shared libraries. Linux has in the past
allowed execution of instructions on the stack and there are lots of binaries and shared libraries assuming this behaviour. Furthermore,
GCC trampoline code for e.g. nested functions requires executable stack on many architectures. To avoid breaking binaries and shared
libraries which need executable stack, ELF binaries and shared libraries now can be marked as requiring executable stack or not requiring
it. This marking is done through the p_flags field in the PT_GNU_STACK program header entry. If the marking is missing, kernel or dynamic
linker need to assume it might need executable stack. The marking is done automatically by recent GCC versions (objects using trampolines
on the stack are marked as requiring executable stack, all other newly built objects are marked as not requiring it) and linker collects
these markings into marking of the whole binary or shared library. The user can override this at assembly time (through --execstack or
--noexecstack assembler options), at link time (through -z execstack or -z noexecstack linker options) and using the execstack tool also on
an already linker binary or shared library. This tool is especially useful for third party shared libraries where it is known that they
don't need executable stack or testing proves it.
OPTIONS
-s --set-execstack
Mark binary or shared library as requiring executable stack.
-c --clear-execstack
Mark binary or shared library as not requiring executable stack.
-q --query
Query executable stack marking of binaries and shared libraries. For each file it prints either - when executable stack is not
required, X when executable stack is required or ? when it is unknown whether the object requires or doesn't require executable
stack (the marking is missing).
-V Print execstack version and exit.
-? --help
Print help message.
--usage
Print a short usage message.
ARGUMENTS
Command line arguments should be names of ELF binaries and shared libraries which should be modified or queried.
EXAMPLES
# execstack -s ~/lib/libfoo.so.1
will mark ~/lib/libfoo.so.1 as requiring executable stack.
# execstack -c ~/bin/bar
will mark ~/bin/bar as not requiring executable stack.
# execstack -q ~/lib/libfoo.so.1 ~/bin/bar
will query executable stack marking of the given files.
SEE ALSO
ld.so(8).
BUGS
execstack doesn't support yet marking of executables if they do not have PT_GNU_STACK program header entry nor they have room for program
segment header table growth.
AUTHORS
Jakub Jelinek <jakub@redhat.com>.
28 October 2003 execstack(8)