我正在为OpenCV中的模式识别编写一个C ++程序。提示用户输入,当用户输入“查看图像数据库”选项时,我想要一个窗口显示该目录中的文件。我尝试使用
进行系统调用system("nautilus /home/sample/index.jpg");
但它说无法找到目录并要求检查拼写。我想知道是不是因为从不同的目录执行程序。任何人都可以解释为什么会这样吗?如果是这样,怎么回事呢?
答案 0 :(得分:1)
如果要打开nautilus,请填写完整路径(可能是 / usr / bin / nautilus ,但您可以使用 命令轻松发现。)
进一步说明:
并非所有Linux系统都有Nautilus(例如,Mint已用 nemo取代Nautilus )
如果您想制作交互式窗口,那么您需要一个合适的图形库。在这种情况下,由于您使用C ++编程,我建议您使用所有Linux桌面发行版上提供的Qt。
答案 1 :(得分:1)
您必须使用默认设置文件管理器,而不是nautilus或任何其他。 请尝试查看此处:Linux default applications,How to find the default file manager