linker

    8

    4답변

    학습 할 때 약간의 문제가 발생했습니다. C에서 초기화되지 않은 전역 변수는 실행 가능한 ELF 파일의 .bss 섹션에 할당된다는 것을 알고 있습니다. 그러나 내가 그들을 사용하기 시작할 때 그들에게 무슨 일이 일어나는가? 즉, 그들은 힙이나 다른 곳에서 자리를 차지합니까? 나는 왜 ... 항상 같은 값 0x80495bc을 반환 printf("%x",&gl

    2

    3답변

    VC++ 2008 및 GCC에서 공유 라이브러리 (.dll, .so)를 빌드했습니다. 문제는 두 라이브러리 모두 내부에서 개인 기호 (클래스, 함수)의 이름을 표시하며 내 보낸 것이 아니라는 것입니다. 내 앱에 내 보내지 않은 클래스/기능의 이름을 표시하지 않으려합니다. 나는 그것을 할 수있는 어떤 방법일까요? 내가 한 GCC에서 : 는 = -fvisibi

    0

    1답변

    확인. 나는 Java로 작성한 프로그램이 JNI를 사용하여 Windows 데스크탑이 잠겨 있는지를 알아낼 수있게하려고 노력해 왔습니다. 나는 JNI를 작동시키는 데 성공했지만, 처음에 사용했던 C 코드는 정답을 돌려주지 않았다. 나는 새로운 코드 (from here on SO)를 얻었지만 조금 변경했지만 링크 오류가있다. 링크 할 때 OpenInputDes

    8

    3답변

    의 그것을 인식해야합니까 (데비안) 기계, 나는 링커에서 오류가 발생합니다 : Linking C executable ../../../../cpsadamsx /home/dala/lib64/libSimTKcommon.so: undefined reference to `dlopen' /home/dala/lib64/libSimTKcommon.so: undefin

    1

    1답변

    현재 공유 라이브러리를 만들 때 동일한 객체 파일 내의 함수가 함께 거짓말을합니다. 함수 위치를 분리하여 퍼뜨리는 데 좋은 소스 파일을 포함하지 않는 좋은 해결책이 있습니까? 우리는 현재 gcc 및 gnu 도구의 4.2.1 버전을 크로스 컴파일 된 것으로 사용하고 있습니다.

    6

    3답변

    필자는 일부 plugin_name.so (일반적으로)에서 함수를 동적으로로드하여 플러그인 시스템을 구현하는 프로그램을 보유하고 있습니다. 하지만 정적 인 "도우미"라이브러리 (helper.a라고도 함)는 플러그인의 주 프로그램과 주 기능 모두에서 사용됩니다. 그들은 어떤 방식 으로든 상호 운용 할 필요가 없으며, 텍스트 조작 등을위한 단지 도우미 함수 일뿐

    0

    1답변

    내 연결 명령 끝에 lalleg를 추가해야합니다.

    1

    2답변

    a.o, b.o 및 c.o가있는 경우 어떻게하면 ld를 d.o에 링크하고 기본 오브젝트 파일에 링크합니까? 필자가 원했던 모든 것은 입력 파일의 모든 기호가 하나의 큰 출력 파일로 결합된다는 것입니다.

    17

    1답변

    저는 실제 구현 코드가있는 실제 .dll 파일의 정보를 참조하여 링커가 단순히 작업을 수행 할 수없는 이유가 궁금합니다. 왜 링커가 .lib 파일이 암시 적 연결을 필요로하는지 아직 모르겠다. 은 그러한 연결에 충분한 내보내기 및 상대 주소 테이블이 아니십니까? 어쨌든 .lib 스텁/프록시 파일없이 .dll 만 사용하여 암시 적으로 연결할 수 있습니까? W

    3

    2답변

    다음과 같은 문제가 있습니다. My (C++ -) 프로젝트는 여러 하위 프로젝트로 구성됩니다. 각각의 파일에는 시작시 실행할 코드가 여러 개 있습니다. // Foo.cpp static TFooRegistry sFooRegistry; // does stuff in constructor. 각 하위 프로젝트에 대한 DLL을 사용하여 내 프로젝트를 구축,