We have managed to get our code building and running on Ubuntu 10.10. The code uses both C++ compiled with GCC 4.5 and fortran compiled with the latest version of ifort. We may be required to support an older embedded linux platform with a version of GCC several years old (still awaiting specs from client). Unfortunately their software and hardware has been speced for military use so it can't be upgraded. My question is are we likely to face ABI issues building our application with the older version of GCC and linking it with libraries compiled with the latest version of ifort?
C++ / Fortran inter language ABI issues with older versions of GCC
531 Views Asked by FuNkDaDdY At
1
There are 1 best solutions below
Related Questions in C++
- C++ using std::vector across boundaries
- Linked list without struct
- Connecting Signal QML to C++ (Qt5)
- how to get the reference of struct soap inherited in C++ Proxy/Service class
- Why we can't assign value to pointer
- Conversion of objects in c++
- shared_ptr: "is not a type" error
- C++ template using pointer and non pointer arguments in a QVector
- C++ SFML 2.2 vectors
- Lifetime of temporary objects
- I want to be able to use 4 different variables in a select statement in c ++
- segmentation fault: 11, extracting data in vector
- How to catch delay-import dll errors (missing dll or symbol) in MinGW(-w64)?
- How can I print all the values in this linked list inside a hash table?
- Configured TTL for A record(s) backing CNAME records
Related Questions in GCC
- gcc static library compilation
- Different behavior of async with Visual Studio 2013(Windows8.1) and GCC 4.9(Ubuntu14.10)
- How to add directories to Cygwin gcc default search path
- Usage of #ifndef directive
- Failure to link a program with gcc -static
- Text as parameter in inline assembly (ARM)?
- Alternatives for strrspn and strfind functions(libgen functions in Solaris) in AIX?
- Incorrect format specifier with gcc compiler
- Why should I use a closing bracket in this?
- How can I compile *without* various instruction sets enabled?
- Automatically wrap C/C++ function at compile-time with annotation
- gcc compiled library: can successfully link with, how come it's "undefined symbol" when run the program?
- compiling caffe on Yosemite
- error - /usr/bin/ld: cannot find -lavutil in ubuntu 15.04
- Compatibility of libstdc++.so libgcc_s.so when upgrading GCC 4.1 to GCC 4.8.2
Related Questions in FORTRAN
- Looping over defined array elements in Fortran
- Is it safe to list optional fortran function argument in OpenMP shared clause?
- Equivalent to asm volatile in Gfortran?
- gfortran does not find symbol fabsq_ in libquadmath
- Assigning values of an array in a loop
- Data exchange - Python and Fortran
- ieee_arithmetic intrinsic module in gfortran
- How to initialize two distinct blacs contexts?
- Fortran Debugging
- need to get f2py working, but don't know any fortran
- Combine Fortran .for and .f90 include header files
- How to parallelize csh script with nested loop
- VS2013 integration with Intel Fortran Compiler
- Windows 8.1 Pro MinGW Gfortran Command Prompt 'not recognized command' error
- How does automatic typecasting (type conversion) work in Fortran?
Related Questions in INTEL-FORTRAN
- VS2013 integration with Intel Fortran Compiler
- Using allocatable/assumed-size arrays with namelist read write
- Ambiguous reference to variable
- 2D array concatenation in fortran
- Include File in Fortran in VisualStudio 2013
- Assignment of Allocatables of Different Shapes in Fortran
- Using call system() causes program to hang... 50% of the time
- Concatenating an expanded macro and a word using the Fortran preprocessor
- Writing a DLL in Fortran/calling from Excel
- How save memory for a solving a symmetric (or upper traingular) matrix?
- Compiler unable to vectorize inner loop
- ifort line length limit
- How to use a variable in the format specifier statement?
- Fortran class pointer to attribute - compiler dependent result
- why .mod files differ after every time i compile a .f file
Related Questions in ABI
- Efficient and safe passing of data over C-style plugin interface
- Cxx11 ABI for a single function call?
- How to call Fortran routine with unit number argument from C
- x86_64 ABI: disassembly issue
- How to safely deploy an application built with an upgraded compiler
- Is it safe to package C++11 software on current Linux distributions?
- What happens if you use the 32-bit int 0x80 Linux ABI in 64-bit code?
- env->NewStringUTF(s) get crash and different ABI version returning different string value
- g++ generating the "complete object allocating constructor"
- Android 32-bit service on aarch64
- C++ / Fortran inter language ABI issues with older versions of GCC
- Making syscalls on Linux without a stack
- What is the format of the x86_64 va_list structure?
- Automatic conversion of stucture to pointer in function call
- Does changing f(mystruct *a) to f(const mystruct *a) breaks API/ABI in C?
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)
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?
Are you trying to call the Fortran code from C++, call the C++ code from Fortran, or both? If you're calling Fortran code from C++, I don't think you'll have a problem, especially if you're using the same Fortran compiler.
If you're trying to access C++ code from Fortran, this will depend on the nature of the C++ code. If the Fortran-accessible functions use C linkage, then you should be okay, because the C ABI is standardized. If the functions use C++ linkage, I would expect to have some trouble, because the C++ ABI isn't standardized and I'm sure GCC has made minor (and possibly major) changes to their ABI over the years.