Qtcreator 에서 Nginx 컴 파일 하기

18861 단어
Qtcreator 에서 Nginx 컴 파일 하기
운영 체제 환경: ubuntu 16.04 32 비트
목차
  • Qtcreator 에서 Nginx 컴 파일
  • 준비 작업
  • 1 Qt 및 gcc 관련 공구 체인 설치
  • 2 폴 더 NginxQtProject 를 만 들 고 디 렉 터 리 NginxQtProject 에 들 어가 빈 프로젝트 NginxQtProject
  • 3 프로젝트 디 렉 터 리 에 들 어가 nginx 소스 압축 패 키 지 를 다운로드 합 니 다. 현재 안정 적 인 버 전 은 nginx - 1121 targz
  • 입 니 다.
  • 압력 을 풀 고 Nginx 소스 코드 를 설정 합 니 다.
  • 1 압축 을 풀 고 nginx 소스 코드 를 설정 합 니 다
  • 2 상기 절 차 를 실행 한 후에 nginx - 1121 디 렉 터 리 에서 obbs 폴 더 를 생 성 합 니 다. 그 중에서 저희 가 나중에 qt 프로젝트 에 추가 할 코드 파일 이 있 으 므 로 주의해 야 합 니 다
  • 3 필요 한 소스 코드 파일 을 qt 프로젝트 에 추가 하여 생 성 된 pro 파일 의 내용 은 다음 과 같다
  • .
  • 4 이로부터 qmake 를 실행 하고 build 작업 을 할 수 있 습 니 다
  • 이로부터 QtCreator 를 통 해 nginx 의 코드 읽 기와 수정 을 즐겁게 진행 합 니 다

  • 준비 작업
    1. Qt 와 gcc 와 관련 된 도구 체인 을 설치 합 니 다.
    2. 폴 더 NginxQtProject 를 만 들 고 디 렉 터 리 NginxQtProject 에 들 어가 서 빈 프로젝트 NginxQtProject 를 만 듭 니 다.
    3. 프로젝트 디 렉 터 리 에 들 어가 서 nginx 소스 압축 패 키 지 를 다운로드 합 니 다. 현재 안정 적 인 버 전 은 nginx - 1.12.1. tar. gz 입 니 다.
        cd NginxQtProject/NginxQtProject
    
        wget http://nginx.org/download/nginx-1.12.1.tar.gz

    압력 을 풀 고 Nginx 소스 코드 를 설정 합 니 다.
    1. 압축 을 풀 고 nginx 소스 코드 를 설정 합 니 다.
        tar -xvf nginx-1.12.1.tar.gz
    
        cd nginx-1.12.1
    
        ./configure

    2. 상기 절 차 를 실행 한 후에 nginx - 1.12.1 디 렉 터 리 에서 obbs 폴 더 를 생 성 합 니 다. 그 중에서 저희 가 나중에 qt 프로젝트 에 추가 할 코드 파일 이 있 으 므 로 특히 주의해 야 합 니 다.
    3. 필요 한 소스 코드 파일 을 qt 프로젝트 에 추가 합 니 다. 생 성 된. pro 파일 의 내용 은 다음 과 같 습 니 다.
    TARGET = nginx
    
    LIBS = -ldl -lpthread -lcrypt -lpcre -lz
    
    INCLUDEPATH += \
        nginx-1.12.1/src/core \
        nginx-1.12.1/src/event \
        nginx-1.12.1/src/event/modules \
        nginx-1.12.1/src/os/unix \
        nginx-1.12.1/objs \
        nginx-1.12.1/src/http \
        nginx-1.12.1/src/http/modules \
        nginx-1.12.1/src/http \
        nginx-1.12.1/src/http/modules
    
    
    HEADERS += \
            nginx-1.12.1/src/core/nginx.h \
            nginx-1.12.1/src/core/ngx_config.h \
            nginx-1.12.1/src/core/ngx_core.h \
            nginx-1.12.1/src/core/ngx_log.h \
            nginx-1.12.1/src/core/ngx_palloc.h \
            nginx-1.12.1/src/core/ngx_array.h \
            nginx-1.12.1/src/core/ngx_list.h \
            nginx-1.12.1/src/core/ngx_hash.h \
            nginx-1.12.1/src/core/ngx_buf.h \
            nginx-1.12.1/src/core/ngx_queue.h \
            nginx-1.12.1/src/core/ngx_string.h \
            nginx-1.12.1/src/core/ngx_parse.h \
            nginx-1.12.1/src/core/ngx_parse_time.h \
            nginx-1.12.1/src/core/ngx_inet.h \
            nginx-1.12.1/src/core/ngx_file.h \
            nginx-1.12.1/src/core/ngx_crc.h \
            nginx-1.12.1/src/core/ngx_crc32.h \
            nginx-1.12.1/src/core/ngx_murmurhash.h \
            nginx-1.12.1/src/core/ngx_md5.h \
            nginx-1.12.1/src/core/ngx_sha1.h \
            nginx-1.12.1/src/core/ngx_rbtree.h \
            nginx-1.12.1/src/core/ngx_radix_tree.h \
            nginx-1.12.1/src/core/ngx_rwlock.h \
            nginx-1.12.1/src/core/ngx_slab.h \
            nginx-1.12.1/src/core/ngx_times.h \
            nginx-1.12.1/src/core/ngx_shmtx.h \
            nginx-1.12.1/src/core/ngx_connection.h \
            nginx-1.12.1/src/core/ngx_cycle.h \
            nginx-1.12.1/src/core/ngx_conf_file.h \
            nginx-1.12.1/src/core/ngx_module.h \
            nginx-1.12.1/src/core/ngx_resolver.h \
            nginx-1.12.1/src/core/ngx_open_file_cache.h \
            nginx-1.12.1/src/core/ngx_crypt.h \
            nginx-1.12.1/src/core/ngx_proxy_protocol.h \
            nginx-1.12.1/src/core/ngx_syslog.h \
            nginx-1.12.1/src/event/ngx_event.h \
            nginx-1.12.1/src/event/ngx_event_timer.h \
            nginx-1.12.1/src/event/ngx_event_posted.h \
            nginx-1.12.1/src/event/ngx_event_connect.h \
            nginx-1.12.1/src/event/ngx_event_pipe.h \
            nginx-1.12.1/src/os/unix/ngx_time.h \
            nginx-1.12.1/src/os/unix/ngx_errno.h \
            nginx-1.12.1/src/os/unix/ngx_alloc.h \
            nginx-1.12.1/src/os/unix/ngx_files.h \
            nginx-1.12.1/src/os/unix/ngx_channel.h \
            nginx-1.12.1/src/os/unix/ngx_shmem.h \
            nginx-1.12.1/src/os/unix/ngx_process.h \
            nginx-1.12.1/src/os/unix/ngx_setaffinity.h \
            nginx-1.12.1/src/os/unix/ngx_setproctitle.h \
            nginx-1.12.1/src/os/unix/ngx_atomic.h \
            nginx-1.12.1/src/os/unix/ngx_gcc_atomic_x86.h \
            nginx-1.12.1/src/os/unix/ngx_thread.h \
            nginx-1.12.1/src/os/unix/ngx_socket.h \
            nginx-1.12.1/src/os/unix/ngx_os.h \
            nginx-1.12.1/src/os/unix/ngx_user.h \
            nginx-1.12.1/src/os/unix/ngx_dlopen.h \
            nginx-1.12.1/src/os/unix/ngx_process_cycle.h \
            nginx-1.12.1/src/os/unix/ngx_linux_config.h \
            nginx-1.12.1/src/os/unix/ngx_linux.h \
            nginx-1.12.1/src/core/ngx_regex.h \
            nginx-1.12.1/objs/ngx_auto_config.h \
            nginx-1.12.1/src/http/ngx_http.h \
            nginx-1.12.1/src/http/ngx_http_request.h \
            nginx-1.12.1/src/http/ngx_http_config.h \
            nginx-1.12.1/src/http/ngx_http_core_module.h \
            nginx-1.12.1/src/http/ngx_http_cache.h \
            nginx-1.12.1/src/http/ngx_http_variables.h \
            nginx-1.12.1/src/http/ngx_http_script.h \
            nginx-1.12.1/src/http/ngx_http_upstream.h \
            nginx-1.12.1/src/http/ngx_http_upstream_round_robin.h \
            nginx-1.12.1/src/http/modules/ngx_http_ssi_filter_module.h
    
    SOURCES += \
            nginx-1.12.1/src/core/nginx.c \
            nginx-1.12.1/src/core/ngx_log.c \
            nginx-1.12.1/src/core/ngx_palloc.c \
            nginx-1.12.1/src/core/ngx_array.c \
            nginx-1.12.1/src/core/ngx_list.c \
            nginx-1.12.1/src/core/ngx_hash.c \
            nginx-1.12.1/src/core/ngx_buf.c \
            nginx-1.12.1/src/core/ngx_queue.c \
            nginx-1.12.1/src/core/ngx_output_chain.c \
            nginx-1.12.1/src/core/ngx_string.c \
            nginx-1.12.1/src/core/ngx_parse.c \
            nginx-1.12.1/src/core/ngx_parse_time.c \
            nginx-1.12.1/src/core/ngx_inet.c \
            nginx-1.12.1/src/core/ngx_file.c \
            nginx-1.12.1/src/core/ngx_crc32.c \
            nginx-1.12.1/src/core/ngx_murmurhash.c \
            nginx-1.12.1/src/core/ngx_md5.c \
            nginx-1.12.1/src/core/ngx_sha1.c \
            nginx-1.12.1/src/core/ngx_rbtree.c \
            nginx-1.12.1/src/core/ngx_radix_tree.c \
            nginx-1.12.1/src/core/ngx_slab.c \
            nginx-1.12.1/src/core/ngx_times.c \
            nginx-1.12.1/src/core/ngx_shmtx.c \
            nginx-1.12.1/src/core/ngx_connection.c \
            nginx-1.12.1/src/core/ngx_cycle.c \
            nginx-1.12.1/src/core/ngx_spinlock.c \
            nginx-1.12.1/src/core/ngx_rwlock.c \
            nginx-1.12.1/src/core/ngx_cpuinfo.c \
            nginx-1.12.1/src/core/ngx_conf_file.c \
            nginx-1.12.1/src/core/ngx_module.c \
            nginx-1.12.1/src/core/ngx_resolver.c \
            nginx-1.12.1/src/core/ngx_open_file_cache.c \
            nginx-1.12.1/src/core/ngx_crypt.c \
            nginx-1.12.1/src/core/ngx_proxy_protocol.c \
            nginx-1.12.1/src/core/ngx_syslog.c \
            nginx-1.12.1/src/event/ngx_event.c \
            nginx-1.12.1/src/event/ngx_event_timer.c \
            nginx-1.12.1/src/event/ngx_event_posted.c \
            nginx-1.12.1/src/event/ngx_event_accept.c \
            nginx-1.12.1/src/event/ngx_event_connect.c \
            nginx-1.12.1/src/event/ngx_event_pipe.c \
            nginx-1.12.1/src/os/unix/ngx_time.c \
            nginx-1.12.1/src/os/unix/ngx_errno.c \
            nginx-1.12.1/src/os/unix/ngx_alloc.c \
            nginx-1.12.1/src/os/unix/ngx_files.c \
            nginx-1.12.1/src/os/unix/ngx_socket.c \
            nginx-1.12.1/src/os/unix/ngx_recv.c \
            nginx-1.12.1/src/os/unix/ngx_readv_chain.c \
            nginx-1.12.1/src/os/unix/ngx_udp_recv.c \
            nginx-1.12.1/src/os/unix/ngx_send.c \
            nginx-1.12.1/src/os/unix/ngx_writev_chain.c \
            nginx-1.12.1/src/os/unix/ngx_udp_send.c \
            nginx-1.12.1/src/os/unix/ngx_udp_sendmsg_chain.c \
            nginx-1.12.1/src/os/unix/ngx_channel.c \
            nginx-1.12.1/src/os/unix/ngx_shmem.c \
            nginx-1.12.1/src/os/unix/ngx_process.c \
            nginx-1.12.1/src/os/unix/ngx_daemon.c \
            nginx-1.12.1/src/os/unix/ngx_setaffinity.c \
            nginx-1.12.1/src/os/unix/ngx_setproctitle.c \
            nginx-1.12.1/src/os/unix/ngx_posix_init.c \
            nginx-1.12.1/src/os/unix/ngx_user.c \
            nginx-1.12.1/src/os/unix/ngx_dlopen.c \
            nginx-1.12.1/src/os/unix/ngx_process_cycle.c \
            nginx-1.12.1/src/os/unix/ngx_linux_init.c \
            nginx-1.12.1/src/event/modules/ngx_epoll_module.c \
            nginx-1.12.1/src/os/unix/ngx_linux_sendfile_chain.c \
            nginx-1.12.1/src/core/ngx_regex.c \
            nginx-1.12.1/src/http/ngx_http.c \
            nginx-1.12.1/src/http/ngx_http_core_module.c \
            nginx-1.12.1/src/http/ngx_http_special_response.c \
            nginx-1.12.1/src/http/ngx_http_request.c \
            nginx-1.12.1/src/http/ngx_http_parse.c \
            nginx-1.12.1/src/http/modules/ngx_http_log_module.c \
            nginx-1.12.1/src/http/ngx_http_request_body.c \
            nginx-1.12.1/src/http/ngx_http_variables.c \
            nginx-1.12.1/src/http/ngx_http_script.c \
            nginx-1.12.1/src/http/ngx_http_upstream.c \
            nginx-1.12.1/src/http/ngx_http_upstream_round_robin.c \
            nginx-1.12.1/src/http/ngx_http_file_cache.c \
            nginx-1.12.1/src/http/ngx_http_write_filter_module.c \
            nginx-1.12.1/src/http/ngx_http_header_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_chunked_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_range_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_gzip_filter_module.c \
            nginx-1.12.1/src/http/ngx_http_postpone_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_ssi_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_charset_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_userid_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_headers_filter_module.c \
            nginx-1.12.1/src/http/ngx_http_copy_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_not_modified_filter_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_static_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_autoindex_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_index_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_auth_basic_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_access_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_limit_conn_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_limit_req_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_geo_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_map_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_split_clients_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_referer_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_rewrite_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_proxy_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_fastcgi_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_uwsgi_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_scgi_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_memcached_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_empty_gif_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_browser_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_upstream_hash_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_upstream_ip_hash_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_upstream_least_conn_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_upstream_keepalive_module.c \
            nginx-1.12.1/src/http/modules/ngx_http_upstream_zone_module.c \
            nginx-1.12.1/objs/ngx_modules.c \
    

    4. 이로부터 qmake 를 실행 하고 build 작업 을 시작 할 수 있 습 니 다!
    QtCreator 를 통 해 nginx 코드 읽 기와 수정 을 즐겁게...

    좋은 웹페이지 즐겨찾기