Tag: LINKAGE
Hola, estoy intentando vincular a una biblioteca sin encabezados. Escribí el prototipo exactamente como se define en la biblioteca, pero ld no puede enlazarlo. readelf -Ws Release/libcef.so | grep KeyStringToDomKey 386822: 00000000066d73d0 328 FUNC LOCAL HIDDEN 17 ZN2ui16KeycodeConverter17KeyStringToDomKeyERKNSt3112basicstringIcNS111chartraitsIcEENS1_9allocatorIcEEEE readelf -Ws main-6cf4e2.o | grep KeyStringToDomKey 13: 0000000000000000 0 NOTYPE GLOBAL DEFAULT . . . Read more
Tengo dos bibliotecas estáticas foo.a y bar.a. Cada biblioteca contiene el mismo símbolo: $ nm foo.a | grep <em>some</em>symbol U <em>some</em>symbol 0000000000000000 R <em>some</em>symbol <p>$ nm bar.a | grep <em>some</em>symbol U <em>some</em>symbol 0000000000000020 R <em>some</em>symbol Cuando intento enlazarlos usando g++ /*other_static_libs*/ foo.a bar.a, funciona bien, pero no entiendo por qué . . . Read more
Quiero probar un caso simple de singleton, escriba una clase C a continuación: class C { static C* ptr_c; C(){} public: static C* getInstance() { if (ptr_c == nullptr) ptr_c = new C(); return ptr_c; } void show() { std::cout << “esta es la clase C” << std::endl; } }; . . . Read more
Considere el siguiente programa de ejemplo: #include <stdio.h> static int n = 123; extern int n; int main(void){ printf(“n is %d\n”,n); return 0; } Se compila correctamente con gcc -std=c99 -pedantic myprog.c. La variable n tiene un enlace estático según C99 § 6.2.2 Linkages of identifiers, parte 4: Para un . . . Read more
Tengo un error de enlace en este código. ¿Puede alguien resolver este problema y explicar por qué sucede? Archivo de encabezado #pragma once #include <iostream> #include <vector> class Shape { public: static void test_shapes(); // estática porque cada forma creada se agrega a esta lista static std::vector<shape*> _shapes; }; Archivo . . . Read more