簡體   English   中英

vbcc 編譯器抱怨:找不到文件“stdio.h”,但它位於“包含”目錄中

[英]vbcc compiler complains: file 'stdio.h' not found, but it is in the 'include' directory

目前這不是交叉編譯設置。 只是一個本地 C 開發環境。 這是代碼:

#include <stdio.h>

int main(void){
 printf("Hello World\n");
}

我用命令編譯: vbbcm68k test.c

Output:

>#include <stdio.h>
error 248 in line 1 of "test.c": file 'stdio.h' not found

我已經安裝了 vbcc_bin_amigaos68k 和 vbcc_target_m68k-amigaos

我的用戶啟動看起來像這樣:

;BEGIN vbcc
assign >NIL: vbcc: Hard Disk:vbcc
assign >NIL: C: vbcc:bin vbcc:include ADD
setenv VBCC vbcc:
;END vbcc

我的安裝根目錄如下所示(header 文件存在於 include/ 中):

Directories
bin
config
doc
include
lib

Files
test.asm
test.c
vbcc_inst.log
vbcc_version

如果我將 .h 文件復制到根目錄,它可以工作,但顯然我希望在 vbcc:include 中檢測到它們。 任何人都可以幫忙嗎?

從頭開始安裝

首先,您的安裝與分布式文件的布局不匹配。 我建議您只需擦除所有內容,然后按以下順序下載並安裝(使用包含的安裝程序腳本): vbcc_bin_amigaos68k.lha vbcc_target_m68k-amigaos.lha

或者嘗試修復它

vcvbccm68k都不會自動在vbcc:include中查找包含,您必須使用-I標志告訴他們在哪里查找。 如果您使用vc命令而不是“原始” vbccm68k ,它可以從腳本中獲取包含文件。

ENV:vc.configVBCC:vc.config$VBCC/config/vc.config (從您的VBCC環境變量)中搜索您平台的默認腳本。 在您的情況下,它應該從環境中獲取,如果您查看config子目錄,您應該擁有該文件。

如果您檢查vc.config ,您會看到它在命令中附加-Ivincludeos3: 默認安裝程序為(特定於目標的)包含文件設置分配,該文件應如下所示:

assign >NIL: vincludeos3: vbcc:targets/m68k-amigaos/include

在你的情況下,我想它會是:

assign >NIL: vincludeos3: vbcc:include

此外,這條線有點奇怪:

assign >NIL: C: vbcc:bin vbcc:include ADD

您應該離開vbcc:include那里,在包含目錄中沒有二進制文件。

調試

對於工具找不到其文件的調試問題, SnoopDOS是無價的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM