ProgrammingThis forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I have programmed in different
languages (nasm: hardware driver and math routines,
c++: frontend-QT, (pascal: normal code -could be written in nasm- ) ).
So I have at least two different objectfiles, those I wanted to link together
but I don't know how I can get the same variable-name (a.out and nasm.o; both elf) in the same section (section.data) in gcc. - To link them together, to use that one variable in both object-files.
Or should I write a third program to execude both programs
and initialize Pipes ?
Under Linux there is a systemcall called set_thread_area,
Is that a possibility ?
I hope there is somebody with a standard solution.
The communication have to be in both directions !
What you can do is is create your nasm.o and then when you compile the C++ program do g++ myprog.cpp nasm.o -o myprog
Or you can do g++ myprog.cpp -c which won't link the program, just create myprog.o. Then you can use ld to link myprog.o and nasm.o into the final executable by doing ld -o myprog myprog.o nasm.o
O.K. that I have done all.
My problem is to use a variable that's the same in both
object-files. ld uses only one offset if it sees, that 2 variables in a section
have the same name.
But I can't get gcc to write that variable name in a section (section.data or .bss).
I'm not really a c++ programmer (it's too complicaded). Assembler (NASM) is my favor.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.