2014-04-29 3 views
2

리눅스에서 실행해야하는 C 프로젝트를 설계해야합니다. Visual Studio 또는 DevC++를 사용하여 Windows에서 C 프로젝트를 디자인하는 데 매우 익숙합니다. Windows에서 프로젝트를 디자인 한 다음 코드를 Linux로 포팅하는 것이 가능합니까? Eclipse CDT를 사용하여 Windows에서 Linux로 컴파일 구성을 전환 할 수 있습니까? 어떻게해야합니까? 내가 무엇을하거나 할 것을 제안합니까?멀티 플랫폼 c 프로젝트

+0

프로젝트의 목표는 무엇입니까? 네트워크 라이브러리, 사진 뷰어, 다른 것입니까? 더 자세한 정보와 더 나은 답변을 제공해주십시오. – fritzone

+0

Projects는 SQLite DB를 사용하는 TCP 클라이언트와 smal 파일 레코더와 다소 비슷합니다. – sanchop22

+0

Eclipse CDT는이를 수행하는 한 가지 방법입니다. 다른 것들은 [Makefiles] (http://wiki.osdev.org/Makefile) 또는 [CMake]와 같은 메타 생성기 (http://jaws.rootdirectory.de)를 포함합니다. (* 링크를 확인하십시오. 어느 쪽이든 기술을 좀 더 쉽게 사용할 수 있도록 만드는 자체 작업입니다.) – DevSolar

답변

2

달성하려는 내용에 대한 정보가 없으므로 이는 광범위한 질문입니다.

제공되는 제한된 정보와 공유 할 수있는 몇 가지 지침 : Linux/Unix에서 사용되는 Microsoft 컴파일러와 gcc 컴파일러의 차이점을 예상해야하지만 Windows 환경에서 코드를 작성한 다음 Linux로 포팅하는 것이 좋습니다 (일반적으로 컴파일러가 표준을 준수하면할수록 코드에서 더 이상 "경고"하거나 받아들이지 않을 것입니다).

많은 의존성/헤더/소스 구조를 다루는 경우 프로젝트는 CMake과 같은 도구를 사용하면 큰 도움이됩니다 (메이크 파일 및/또는 시각적 요소를 생성 할 수있는 메타 생성기) 동일한 출처의 플랫폼에 따라 스튜디오 솔루션).

또한 이 아니어야합니다.은 코드를 이식 가능하도록하기 위해 플랫폼 종속적 인 API를 사용해야합니다. 정말로 필요한 경우에는 코드를 컴파일하고있는 특정 플랫폼의 코드 섹션 #ifdef을 확인하십시오.

마지막으로 응용 프로그램에서 GUI를 사용하려는 경우 (또는 여러 라이브러리가 포함되어 있어도 여전히 유용 할 수있는 GUI를 계획하지 않은 경우) Qt과 같은 휴대용 프레임 워크를 사용할 수 있지만, 이 경우 응용 프로그램의 C 부분을 C++ (Qt)에서 분리해야합니다. 선호도의 또 다른 선택 사항으로 GTK +를 사용할 수도 있습니다.