나는 C++ 공유 라이브러리를 생성하고 PHP에서 호출 된 C++ 콘솔 응용 프로그램과 통합했습니다. 내 창문에서 이것을 시도하고 완벽하게 작동합니다. 이제 리눅스 웹 서버로 옮겨야합니다. 나는 그것을 다시 실행하기 위해 리눅스에서 C++ 콘솔 응용 프로그램을 컴파일해야하고 C++ 공유 라이브러리도 생성 할 수 있음을 알고 있습니다. 나는 리눅스 운영체제에 익숙하지 않다. 어떻게 모든 추가 라이브러리를 할당하는 리눅스 서버에서 C++ 콘솔 애플리케이션을 컴파일하고, 파일을 포함하고, C++ 공유 라이브러리에서 생성 된 헤더 파일을 Visual Studio 에서처럼 만들 수 있는가? 이것에 관한 어떤 링크든지 높게 평가 될 것이다. 공유 라이브러리가 matlab에서 왔기 때문에 나는 또한 C++ 콘솔 어플리케이션을 컴파일하면서 matlab include 파일과 라이브러리를 할당해야합니다.리눅스에서 C++ 콘솔 응용 프로그램 컴파일하기
0
A
답변
1
당신은 matlab에 리눅스를 설치하고 리눅스에서 작업하는 것 (그리고 약간의 테스트 & 디버깅)과 관련하여 matlab에서 만든 라이브러리 port을 얻어야한다고 생각합니다.
당신의 LIB 준비, 포트 콘솔 응용 프로그램은 또한 경우 (디버깅 등 모든.), 다음 터미널을 엽니 다 - 콘솔 응용 프로그램의 소스가 여러 파일에 걸쳐있는 경우
이gcc -Wall console_app.c /path/to/your/libFromMatlab.a -o console_app
, 당신은 고려할 수 있습니다 code::blocks과 같은 IDE를 사용하거나 makefile을 사용하여 작업을 간소화하십시오.
"libFromMatlab.so"(위의 .so 대 .a 위) 위치를 라이브러리 경로에 추가하거나 다른 위치에 복사하십시오. 그러면 console_app에 실행 가능 플래그가 설정되어 있는지 확인하십시오.
NB : 크로스 컴파일없이 대상 플랫폼 이외의 플랫폼에서 개발하는 것은 러시아어 룰렛을 재생하는 것과 동일합니다 ... 단지 덜 치명적입니다.
----- 편집 ------
는 또한 this article을 가로 질러 와서 섹션 4는 어떤 가치가있을 수있다 생각했다.
관련 문제
- 1. 리눅스에서 Windows 용 GTK + 응용 프로그램 컴파일하기
- 2. 리눅스에서 C++로 Boost/NTL 프로그램 컴파일하기
- 3. xcode 컴파일 콘솔 응용 프로그램 - C 프로그래밍
- 4. 모노로 응용 프로그램 컴파일하기
- 5. 리눅스에서 기본 OpenCV + Cuda 프로그램 컴파일하기
- 6. C# 콘솔 콘솔 응용 프로그램 닫기
- 7. C# 콘솔 응용 프로그램 인수로
- 8. 의 C# 콘솔 응용 프로그램
- 9. 게시 C# 콘솔 응용 프로그램
- 10. C# 콘솔 응용 프로그램 인수
- 11. C++ 콘솔 응용 프로그램 MVC
- 12. C# 콘솔 응용 프로그램 타이머
- 13. Nodej.s C++ 콘솔 응용 프로그램
- 14. C# 콘솔 응용 프로그램 - 변수
- 15. 리눅스에서 액션 스크립트 컴파일하기
- 16. 리눅스에서 콘솔 모드로 내 프로그램 시작
- 17. 지역 콘솔 응용 프로그램
- 18. 다른 폴더에있을 때 리눅스에서 라이브러리 컴파일하기
- 19. Win32 콘솔 응용 프로그램 대 CLR 콘솔 응용 프로그램
- 20. 리눅스에서 실행되는 C# 응용 프로그램 OS :
- 21. : 내 콘솔 응용 프로그램
- 22. 리눅스에서 GraphicsMagick jni 라이브러리 컴파일하기
- 23. 콘솔 응용 프로그램
- 24. C# 콘솔 응용 프로그램 용 로거 응용 프로그램
- 25. 응용 프로그램 와이드 정적 변수 C# 콘솔 응용 프로그램
- 26. 리눅스에서 z3 ocaml 바인딩 컴파일하기
- 27. 리눅스에서 C++ 프로그램 컴파일
- 28. 리눅스에서 C 프로그램 실행
- 29. 콘솔 응용 프로그램이 리눅스에서 작동하지 않습니다.
- 30. C# 콘솔 응용 프로그램 - 계속 실행하십시오.
가지고있는 파일의 다이어그램을 그리거나 메이크 파일 또는 다른 것을 표시 할 수 있습니까? 나는이 질문에 대한 답을 얻을 수 있다고 확신하지만, 세부 사항없이 "필요한 디렉토리가 아닌 디렉토리를 포함하라"를 사용합니다. –
matlab에 관해서는 Windows dll을 리눅스에서 사용할 수 없다는 것을 알아 두십시오. .lib 및 .dll보다 리눅스에서 동일한 역할을하는 .a (정적 라이브러리) 또는 .so (동적 라이브러리)를 사용해야합니다. –