2012-03-29 25 views
5

tôi nhận được lỗi sau biên soạn với make (Tôi có cygwin.dll)Win 8, Cygwin đống suy

*** Couldn't reserve space for cygwin's heap (0x150000) in child, cygheap, Win32 error 0 
      0 [main] make 4336 sync_with_child: child 2968(0x120) died before initialization with status code 0x1 
     308 [main] make 4336 sync_with_child: *** child state waiting for longjmp 

Làm thế nào có thể nó được giải quyết? Cảm ơn

+0

Biên dịch chương trình nào? Chào thế giới? – karlphillip

+1

no.why là nó quan trọng? Tôi có một makefile cho nó. Và nó hoạt động ok trên win7. – Yakov

+0

Nếu không quan trọng, tôi sẽ không hỏi. Tôi đang cố gắng để xác định xem đây là một vấn đề ngẫu nhiên, hoặc nếu nó là một cái gì đó xảy ra một cách nhất quán, và nếu một cái gì đó đó là tái sản xuất với các ứng dụng nhỏ nhất có thể. Bạn đang nói với tôi rằng biên dịch một ứng dụng Hello World không kích hoạt lỗi này? Bạn đã thử nghiệm này chưa? – karlphillip

Trả lời

7
  • Khởi động lại hệ thống của bạn:

Hầu hết người dùng phàn nàn về vấn đề này thông báo nó sẽ biến mất sau khi khởi động lại. Nếu bạn đang sử dụng Windows 7, hãy kiểm tra thư từ BerndP trong this thread, nó có một số mẹo liên quan đến việc điều chỉnh cài đặt Bộ nhớ ảo trên Windows.

  • Có thể là một số phần mềm can thiệp với Cygwin:

This post mang lại một cuộc thảo luận thú vị về vấn đề ngẫu nhiên với Cygwin. BLODA list trình bày một danh sách các ứng dụng được biết là gây ra lỗi và sự cố lạ trong Cygwin.

EDIT:

Windows 8 vẫn chưa được chính thức phát hành, vì vậy don't expect Cygwin to work on it.

Cygwin có thể được mong đợi chạy trên tất cả các phiên bản 32 bit hiện đại của Windows Bao gồm, tính đến thời điểm viết này, Windows 2000, Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 cũng như môi trường WOW64 32 bit trên các phiên bản Windows 64 bit đã phát hành (XP/2003/Vista/2008/7/2008 R2).

+1

Có, khởi động lại đã giải quyết được sự cố này trên máy tính Windows 8 của tôi. Tôi đã cài đặt 16Gb RAM, và có lẽ nó không đồng bộ với các thiết lập Bộ nhớ ảo của tôi ... –

+1

Khởi động lại không giúp tôi thậm chí một lần trên máy Windows 64 64 bit với 32GB RAM. Việc sửa chữa rebase làm việc mặc dù. – simich

1

Tôi đang làm việc với nhật thực và đang sử dụng MinGW + Yagarto trên Windows 8. Khởi động lại không có gì.

Tôi đã giải quyết vấn đề bằng cách mở rộng bộ nhớ ảo, bộ nhớ ban đầu được đặt thành 896Mb và không ở mức 3000Mb và hoạt động tốt.

12

Tôi chỉ gặp sự cố này và được khuyên nên rebase msys-1.0.dll gây ra sự cố.

Cụ thể, tôi sử dụng công cụ ReBase.exe:

C:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\x64\ReBase.Exe 

là một phần của v7.1 (và các phiên bản có lẽ khác) của Microsoft nền tảng SDK available here.

mất một bản sao lưu của dll, và sau đó thử dòng lệnh này bên trong nền tảng command prompt sdk:

rebase -b 0x30000000 /path/to/msys-1.0.dll 

này giải quyết vấn đề này đối với tôi.

để quan tâm, cài đặt bộ nhớ ảo được đề xuất của tôi được đặt ở khoảng 3 GB và bộ nhớ ảo được phân bổ thực tế ở mức 6 GB.

+0

Điều đó đã làm cho tôi. Cảm ơn rất nhiều. – ereOn

+1

Tôi đã gặp vấn đề này trong một thời gian trước khi quyết định thử sửa chữa lại. Nó hoạt động như một sự quyến rũ mặc dù tôi không hoàn toàn hiểu ý nghĩa của địa chỉ rebase; Tôi đã nhập một số khác trên Windows 8.1 64 bit. Tôi đã sử dụng rebit của chính git bởi vì tôi không có Cygwin hoặc cài đặt tương tự. Chỉ để tham khảo, đây là nơi tôi đọc về sửa lỗi: http://jakob.engbloms.se/archives/1403. – simich

0

Sự cố này có thể được giải quyết bằng cách thay đổi chế độ tương thích của gcc.exe (hoặc bất kỳ cái gì gọi là make) vào Windows Xp (trong Properties-> compatibility) Tuy nhiên, tập lệnh phải được thực thi với tư cách quản trị viên để tránh nhiều xác nhận khi gọi gcc.exe