Programming :: Linking The Assembly And C?

Apr 29, 2010

I have a C code and assembly (nasm) code and I am not able to find how to link them each other. Here are the codes :
NASM side:

Code:

global_maxofthree
section .text
_maxofthree:

[code]....

I am using ubuntu 9.10 and my NASM version 2.05.01 compiled on Nov 5 2008.

View 4 Replies


ADVERTISEMENT

Programming :: Static Linking Versus Dynamic Linking

Apr 18, 2010

I have written an OpenGL based program which uses i.a. libjpeg that I want to link statically so I can send it to someone who doesn't have all the libraries needed installed to allow for a dynamically linked executable to run. As such I tried with giving the [b]-static[b] parameter to gcc.

Code:

x86_1$ make
gcc -O3 -c jpegloader.c
gcc --std=c99 -O3 -c --std=c99 -I/usr/include -L/usr/X11R6/lib main.c

[code].....

Why would gcc claim that I'm missing GLUT? This works perfectly fine when I do dynamic linking -- i.e. omitting the -static argument.

View 13 Replies View Related

Programming :: What's Relationship Btw C Hex And Assembly?

Jul 12, 2011

Could you please explain the relationship between the languages?For one, is C writing assembly when you compile, does every piece of code end up assembly/hex? Is there a way to convert (?port?) between them?I don't understand much at all of them yet, but I've seen examples where it looks like they are interacting, and an understanding of all of them looks to be important?

View 12 Replies View Related

Debian Programming :: How Can Use Chmod In Assembly X86

Aug 3, 2014

i wanna use chmod() in linux x86 [debian 3.7.2 x86] but i have some problem in function argv

look at this function:
Code: Select all int chmod(const char *path, mode_t mode);

and mode_t modes:
Code: Select all       S_ISUID  (04000)  set-user-ID  (set  process  effective  user   ID   on
                         execve(2))

       S_ISGID  (02000)  set-group-ID  (set  process  effective  group  ID  on
                         execve(2);  mandatory  locking,   as   described   in
                         fcntl(2);  take a new file's group from parent direcق
                         tory, as described in chown(2) and mkdir(2))

[code]...

i know there is some problem in ecx and mode_t value/

View 2 Replies View Related

Programming :: Code To Add 5 Numbers In Assembly?

Mar 28, 2011

Looking for code to add 5 numbers in assembly? I want to use array for input of those 5 numbers. No problem if the output is 1 digit(0....9).

View 3 Replies View Related

Programming :: Converting C Code To Assembly

May 17, 2011

I've been converting some C code to assembly for my homework; it was going well but I'm having trouble with a for loop for hours. I could not understand where is the problem and decided to ask. I'm posting the part where I'm having trouble of my C-code and assembly-code; every other part of codes act same and the variable values are same. I'm waiting this two codes to act same, but they don't.

Code:
mov ebx, [result]
mov eax, [i]
mov ecx, [ebx+eax]
mov [j], ecx
mov [ebx+eax], byte '.'

_loop:
mov ebx, [result]
mov eax, [i]
inc eax
mov cl, [ebx+eax]
cmp cl, 'Z'
je _continue

mov ebx,[result]
mov eax,[i]
inc eax
mov ecx, [ebx+eax]
mov [k], ecx
mov ebx, [result]
mov eax, [i]
inc eax
mov ecx, [j]
mov [ebx+eax], ecx
mov ecx, [k]
mov [j], ecx
inc dword [i]
jmp _loop

_continue:
Code:
j=result[i];
result[i]='.';
for(;result[i+1]!='Z';i++){
k=result[i+1];
result[i+1]=j;
j=k;
}

View 10 Replies View Related

Programming :: X86 Syntax - Understanding Assembly Instruction

Jan 6, 2011

I'm reading "Understanding the Linux Kernel" and came upon this assembly instruction:
movl $(__KERNEL_CS << 16), %eax
I am curious as to what "<<" means/does. I tried to gooogle, but google doesn't search for "<<".

View 7 Replies View Related

Programming :: Assembly - Structure References To Members - Get The Values 403004h And 4

Jul 9, 2011

[Code]....

if the address of stWndClass is 403000h, WHY it would be compile as mov eax,[esi+403004] and the first one would be mov eax,[esi+4]? I know how to get the values 403004h and 4,but do not know why.

View 5 Replies View Related

Programming :: Can Bash Commands Be Converted To Assembly Like C Source Code?

Nov 30, 2010

I have read where C is first converted to Assembly before its final compilation to binary. Is there a way to do this with Bash commands? I would like the understanding that Assembly allows to Bash somehow.

View 14 Replies View Related

Programming :: Traverse Byte Array In Assembly Using Nasm As Assembler?

Jun 16, 2010

I am trying to learn assembly using nasm as assembler. I did not found example related to string operation. I had following example code,

global asm_strlen
section .data
section .bss
section .text

[code].....

my problem is at highlighted line, I am not getting how to copy a byte into 4 byte reg. rather what is syntax of mov instruction to mov byte to WORD DWORD etc.

View 3 Replies View Related

Programming :: C++Linking Classes/.cpp Files To Run One After Other?

Apr 11, 2010

This is probably a really stupid thing to ask considering the development I'm doing (effectivly creating a virus scanner), but how do I link classes/cpp files?I have 3 applications/sections that I can compile/combine with a makefile, that's fine, but I need them to run 1, 2, 3 once the output from the makefile is done.Currently the only section to actually run is whichever I have "main" in and obviously if I put that into all three, they won't compile as one.I've been looking all over the place at all sorts, header files and such, but there is no mention of how toually do this although I'm sure it must be possible. I'm used to being able to do this in Java and I'm sure I've seen C++ applications do it, but not worked out how.I have 3x .cpp files which are combined into one using a makefile:

Code:
# Virus Scanner
scanner.out : ProgramList.o MD5Hash.o HazardCheck.o

[code]...

View 2 Replies View Related

Programming :: GCC Static Linking Error ?

Jun 10, 2010

There's a problem with static linking (and no problems with dynamic linking).

Here's my code:

Quote:

And makefile rule:

Quote:

That's dynamic linking. And it works perfectly. If i use static linking

Quote:

There is an undefined reference error:

Quote:

As nm shows there's a symbol named BuzzerInit in static library.

View 2 Replies View Related

Programming :: Linking Options For Python?

Dec 11, 2010

I am trying to build an application that must link with python so as to load a python module during runtime.I have this makefile :

Code:
[alex@iskandhar src]$ cat Makefile
CFLAGS = -Wall -O3 -I ../../../SPOOLES.2.2 -DARCH="Linux" -DSPOOLES -DARPACK

[code]....

View 4 Replies View Related

Programming :: Linking To XInput2.h Fails?

Oct 5, 2010

I have a really simple program trying to use XInput2.h, which fails on linking

Code:
#include <X11/extensions/XInput2.h>
int main(){
Display *XSession = XOpenDisplay(NULL);
int OriginScreen = 0;
int pID = 7;

[Code]....

I'm at a loss about what to do. Replacing XIWarpPointer by XWarpPointer and removing the pID argument solves it, but is not an option (no input ID).

View 5 Replies View Related

Programming :: Undefined Reference To Function While Linking

May 27, 2010

I am trying to add some function to the c++ project (calling function) and the called function are in C. And i am getting error "undefined reference to "Hello(int,int)" " while linking. It is compiling correctly. It is linking to header file mention in the calling function. This header file has definition to the c - called function. Do you thinking having c files into C++ project will be a problem? Should I remove <stdio.h> in c files?

View 2 Replies View Related

Programming :: Shared Objects - Mapping And Linking?

Oct 28, 2010

I have a question about shared objects and when mapping and linking is established in the following code...Well more of a verification.

getsetx.c - shared object source code Code: unsigned long x = 0;

unsigned long getx(void)
{
return x;
}
[Code].....

Now its my understanding when I execute ./testit, getsetx.so will get mapped into its address space at start up and testit will link any functions as they are needed..

View 3 Replies View Related

Programming :: Compiling And Linking Multiple Files Using Gcc?

Mar 13, 2011

compiling and linking using gcc: What does a file name with a suffix '.a' represent? If I have multiple .c and .h files, how can I link them together? How can I create the .a file?

View 6 Replies View Related

Programming :: G++ Linking Error With Multiple Libs

Jan 9, 2011

I tried to link my executable program with 2 static libraries using g++. The 2 static libraries have the same function name. I'm expecting a "multiple definition" linking error from the linker, but I did not received.

Code:

//staticLibA.h
#ifndef _STATIC_LIBA_HEADER
#define _STATIC_LIBA_HEADER
int hello(void);

[code]....

View 4 Replies View Related

Programming :: SDL + Eclipse + CDT Compiling But Not Linking With G++ On Arch?

Jan 22, 2011

I have set up Eclipse + CDT on an Arch 2010.05 install. I set up an eclipse project and added SDL as a dependency (see below):

Project -> Properties
* -> GCC C++ Compiler -> Preprocessor -> main=SDL_main
* -> GCC C++ Linker -> Libraries -> SDLmain SDL (in that order top to bottom)
* -> GCC C++ Linker -> Libraries -> Library Search Path -> /usr/lib/ (I verified that libSDL.a and libSDLmain.a are there)

This is the code I'm compiling. It's designed to just be a hello world style SDL app to see that everything is working.

[Code]...

View 3 Replies View Related

Programming :: Library Linking - ELF File OS ABI Invalid Error

May 6, 2010

[root@shankar-lx src1]# make
gcc -c main.c
gcc -c database.c
gcc -c e_sqlite.c
gcc -o TEST main.o database.o e_sqlite.o /usr/local/lib/libsqlite3.so.0.8.6 -w -lpthread
[root@shankar-lx src1]# ./TEST
./TEST: error while loading shared libraries: /usr/lib/libsqlite3.so.0: ELF file OS ABI invalid

My application compiled well but when try to run, it is giving ELF file OS ABI invalid ERROR. What is this error.
Kernel version is 2.4-18

View 1 Replies View Related

Programming :: Linking Application To Open Source Libraries

Feb 10, 2011

I would like to ask you something about open-source and linux. Is it possible to make a commercial application for linux and sell it compiling it with linking to open-source libraries without altering them and consequently without allowing download of the source code and without making the application itself free?

View 3 Replies View Related

Programming :: Undefined Symbols When Linking A With Main O Files

Feb 17, 2010

I am using Centos 5.4 with gcc v4.1.2. If I take a bunch of .o files and I then link with my main.o to form an executable then this links and executes just fine. If however, I try to create an archive file (.a) using 'ar rus xxx.o yyy.o etc' and then try to link the resulting .a with my main.o then I get 'undefined symbol' linker errors and I don't understand why.

View 2 Replies View Related

Programming :: Assembly Error: I386 Architecture Incompatible With I386:x86-64 Output?

Aug 21, 2010

I was following a simple tutorial on how to program and compile a hello world program using assembly when I got this error;Quote:ld: i386 architecture of input file `hello.o' is incompatible with i386:x86-64 output.The tutorial told me to make two files;Quote:hello.asmsection .data;section declaration

msg db "Hello, world!",0xa;our dear string
len equ $ - msg ;length of our dear string
section .text;section declaration

[code]....

View 3 Replies View Related

Programming :: Linking And Compiling Multiple C++ Files Into One Executable Program?

Dec 17, 2009

I have 3 c++ files, classdef.h (header file with class definition), methods.cpp (class methods) and program.cpp - the program itself. Both .cpp files have

Code:

#include "classdef.h"

in files. How I can link the files together and compile them in one executable program? I am using Geany IDE for coding.

View 4 Replies View Related

Programming :: Linking Of Fortran Executable Taking Exorbitant Amounts Of Time?

Mar 24, 2010

The issue I am currently facing is more of an annoyance / curiosity, and it may not even be a problem, but it sure feels like one. Background: I am becoming a computational chemist (grad school begins in the fall) and the code I run is all in fortran. I am currently compiling with gfortran. When I compile the code (on a box running ubuntu server), everything appears to compile fine, but the linking stage is taking five to ten minutes. I ran the time command while making it and got the following results.

Quote:

time make
gfortran -c -O3 -fomit-frame-pointer -finline-functions -ffast-math suijtab.f
Linking testCompile ...
done

[code]...

I just don't understand why it is taking 5 minutes of real time if it only takes 10 - 15 sec of system time?

View 4 Replies View Related

Programming :: Linking Object Files With Geany On Ubuntu - Undefined Reference To Class::functionName

Mar 9, 2009

I have created a simple test class - Mortgage, with the class declaration in the .h file and the class's methods defined in the .cpp file. (mortgage.h && mortgage.cpp, respectively) Straight up C++ 101 as far as I can tell. I instantiate the class in the main() function, which is defined in practice.cpp. Using Geany on Ubuntu, both the practice.o and mortgage.o files are created, but then I get a linker error: undefined reference to class::functionName

I get it for each function. If the mortgage.cpp file is foremost in the editor when I click "build", then I get the undefined reference to main() error, if practice.cpp is foremost (where the main() function is) then I get undefined reference to Mortgage::Mortgage(), and all the rest of the functions defined for that class. How do I get the linker to know where my object files are so it will link them in? Or is the problem somewhere else entirely?

View 8 Replies View Related

Programming :: "Unresolved Reference" Error While Doing Dynamic Linking Of C++ (shared Object)

Apr 13, 2011

I am creating two shared libs that i intend to be dynamically linkable in C and C++, cross platform Linux/Windows/Mac. As a basic sketch, true for both libs, the lib code is in several .c/.cpp and .h files. For now, I'll talk about the part that I am actively working on, a lib named Discover, i.e. libdiscover.so.1.0. First, everything is in a namespace, RemKon_Discover.

The main Discover.cpp defines the methods for the Discover class (declared in Discover.h) and has extern "C' routines that can return pointers to my main c++ object. The call to GetLibraryMainPointer() creates a Discover class object, theMainObject (ok, I win a prize for dumb names) and returns the (non-mangled) pointer to the caller over in my test program. The Discover class itself is declared extern "c" and the tester program #includes "Discover.h".

In the test program, dlopen() correctly opens the lib and dlsym() gets the pointer to theMainObject. However, when I use that pointer in the tester program to access a method (aDiscoverObject->hello(), e.g.) I get compile time errors saying that Discover::hello() in an undefined reference. My makefile is attached.

[Code]....

View 10 Replies View Related

Ubuntu :: Application For ASSEMBLY Training?

Feb 8, 2011

i am new to programming world and am trying to understand ARM core. I need an application to help me understand / train assembly language. If anyone knows a good application for this

View 9 Replies View Related

Ubuntu :: How To Choose To Write In Assembly On Gedit

Apr 8, 2010

how do i choose to write in assembly on Gedit? is it "Makefile"? i'm writing for ai386

View 5 Replies View Related

General :: Check The Output Of Assembly File?

Jan 14, 2011

I have a small doubt regarding Assembly file compilation. I have two .s files. When I compile two .s files I am getting corresponding .o files. But when I compare the both .o files with diff command, it is resulting that two files are differing. How could/ what are commands we should use to understand the difference between two .o file's output.

View 4 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved