I have a function called init in a cpp file, but when I compile it, g++ creates in the object file a symbol named _Z4initv, so when I link after with ld with the option -e init, obviously ld doesn't recognize the symbol init. Is there a way to create symbols name in C style with g++ ?
1
There are 1 answers
Related Questions in LD
- ELF binary has inconsistency detected by ld.so: dl-call-libc-early-init.c: 37: Assertion `sym != NULL' failed
- Use gcc to compile multiple c files, ml (masm) to compile multiple assembly files and link with extern linker: Undefined reference to '__main'
- Assembly x86 - status code not shown as defined
- Same versions of Linux, CC, LD have different link order rules
- How do you get the SBCL foreign function interface example from the SBCL User Manual to work?
- Make : make[2]: *** No rule to make target '<path/to/.so>', needed by '<target>'. Stop
- Linker can't find shared library compiled by g++
- Assembly segmentation fault in example code
- LD won't move .rodata section with -Trodata OFFSET
- MacOS dlopen search path does not add .dylib extension using gcc/ld
- GCC/LD position-independent code with instruction-relative data access
- Linker error: error adding symbols: bad value with GNU ARM toolchain
- ld: undefined reference to object I can see in objdump
- PT_LOAD issue when trying to call ld
- How to fix, cannot find -lfaiss_c: No such file or directory
Related Questions in G++-4.7
- C++ friend operator overloading with template parameters for nested enums
- g++: error trying to exec 'jc1': execvp: No such file or directory
- How to force MATLAB 2016a to use gcc-4.7.x instead of the one I have (gcc-5.4.1)?
- How to force g++ to create C symbol name
- arm-linux-gnueabi-g++-4.7 cross-compiling c++11
- two versions of g++(4.4 and 4.7) exist in centos6.5 ,how to use g++4.7
- Add prefetch capability to target of arm-linux-gnueabi-g++
- OpenMP: don't use hyperthreading cores (half `num_threads()` w/ hyperthreading)
- Is OpenMP (parallel for) in g++ 4.7 not very efficient? 2.5x at 5x CPU
- Compilation Error: libDAI-0.3.2 in Ubuntu 14.04 with MATLAB
- g++ (tdm-1) 4.7.1 doesnt support all c++11 features
- gcc build object and dependency files together
- Nested class member access on C++11
- ofstream not working on linux
- gcc g++ 4.7 install on suse never found the "rpmlib(PayloadIsLzma)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
If you have a definition like e.g.
Then to inhibit name mangling you need to declare it as
extern "C":If you have a declaration in a header file that you want to include in a C source file you need to check if you're including the header file in a C or C++ source file, using the
__cplusplusmacro:Note that the function in the header file has to be declared with
voidin the argument list, if it doesn't take any arguments. That's because the declarationvoid init()means something else in C.