Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

197
Views
¿Funcionará un .so compilado en C con una aplicación C++?

Si quiero vincular dinámicamente una biblioteca compartida (.so) para una aplicación C++ (que se creó con g++) usando LD_PRELOAD, ¿importa si el .so se genera desde un archivo fuente C (usando gcc) o un archivo fuente C++? (usando g++)? ¿Y porqué o porqué no?

Gracias por ayudarme a entender esto.

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Sí, un ejecutable de C++ se puede vincular (tanto estática como dinámicamente) a una biblioteca de C.

Esto es completamente deliberado. Las ABI de C++ están diseñadas para ser compatibles con versiones anteriores.

Deberá asegurarse de que las declaraciones de funciones, etc., de los símbolos de la biblioteca, tal como están escritos en su programa C++, estén marcados como extern "C" para indicar que está cruzando un límite de idioma. Por lo general, los propios archivos de encabezado enviados por la biblioteca harán esto por usted.

over 4 years ago · Santiago Trujillo Report

0

No importa cómo se generó un .so. Debería poder precargar un .so que también se generó a partir del código FORTRAN. La cuestión clave es asegurarse de usar correctamente los símbolos en el .so.

Cuando se genera un .so a partir del código C, los nombres de los símbolos se desentrañan.

Cuando se genera un .so a partir del código C++, los nombres de los símbolos se alteran.

No estoy seguro de si los nombres de los símbolos en un .así generado desde FORTRAN están alterados.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!